{"id":1100,"date":"2026-09-18T07:00:00","date_gmt":"2026-09-18T05:00:00","guid":{"rendered":"https:\/\/iconoclaste.net\/blog\/?p=1100"},"modified":"2026-08-06T17:00:46","modified_gmt":"2026-08-06T15:00:46","slug":"activite-paranormale-nocturne","status":"publish","type":"post","link":"https:\/\/iconoclaste.net\/blog\/2026\/09\/18\/activite-paranormale-nocturne\/","title":{"rendered":"Activit\u00e9 paranormale &amp; nocturne"},"content":{"rendered":"\n<!-- \n  PARA ACTIV \u2013 jouet interactif iconoclaste.net\n  \u2192 Coller TOUT ce code dans un bloc \u00ab HTML personnalis\u00e9 \u00bb (Gutenberg)\n  \u2192 Fonctionne aussi dans un widget HTML ou un template\n\n  Comportement :\n  - Affichage centr\u00e9, taille r\u00e9elle (400\u00d7240), fond noir\n  - Image a1 cliquable\n  - 1er clic \u2192 s\u00e9quence a2 \u2192 a3 \u2192 a4 \u2192 a5 \u2192 a6 \u2192 a7 puis boucle a6 \u2194 a7\n  - Pendant la boucle a6\/a7 : clic \u2192 s\u00e9quence inverse a5 \u2192 a4 \u2192 a3 \u2192 a2 \u2192 stop sur a1\n  - a1 redevient cliquable pour recommencer\n-->\n\n<div id=\"iconoclaste-para-activ\">\n  <img fetchpriority=\"high\" id=\"para-img\"\n       src=\"https:\/\/iconoclaste.net\/blog\/wp-content\/uploads\/2026\/08\/para_activ_1.jpg\"\n       width=\"400\"\n       height=\"240\"\n       alt=\"Para Activ\"\n       loading=\"eager\"\n       decoding=\"async\">\n<\/div>\n\n<style>\n  #iconoclaste-para-activ {\n    position: relative;\n    max-width: 440px;          \/* 400 + padding *\/\n    margin: 0 auto 1.5em;\n    padding: 20px;\n    line-height: 0;\n    background: #000 !important;\n    cursor: pointer;\n    -webkit-tap-highlight-color: transparent;\n    user-select: none;\n    -webkit-user-select: none;\n    text-align: center;\n  }\n\n  #iconoclaste-para-activ img {\n    display: block;\n    width: 100%;\n    max-width: 400px;\n    height: auto;\n    margin: 0 auto;\n    vertical-align: top;\n    pointer-events: none;\n    background: #000;\n  }\n\n  \/* Pendant les s\u00e9quences on garde le curseur pointer pour feedback *\/\n  #iconoclaste-para-activ.playing {\n    cursor: default;\n  }\n\n  #iconoclaste-para-activ.looping {\n    cursor: pointer;\n  }\n<\/style>\n\n<script>\n(function () {\n  \"use strict\";\n\n  if (window.__iconoclasteParaActivInit) return;\n  window.__iconoclasteParaActivInit = true;\n\n  const BASE = \"https:\/\/iconoclaste.net\/blog\/wp-content\/uploads\/2026\/08\/para_activ_\";\n  const frames = [];\n  for (let i = 1; i <= 7; i++) {\n    frames.push(BASE + i + \".jpg\");\n  }\n\n  \/\/ Index 0 = a1, 1 = a2 \u2026 6 = a7\n  const SPEED = 95;       \/\/ vitesse de la s\u00e9quence aller \/ retour\n  const LOOP_SPEED = 140; \/\/ vitesse de la boucle a6 \u2194 a7\n\n  function init() {\n    const container = document.getElementById(\"iconoclaste-para-activ\");\n    const img       = document.getElementById(\"para-img\");\n\n    if (!container || !img) return;\n\n    \/\/ Pr\u00e9chargement\n    frames.forEach(function (src) {\n      const preload = new Image();\n      preload.src = src;\n    });\n\n    let state = \"idle\"; \/\/ idle | forward | looping | reverse\n    let timer = null;\n\n    function clearTimer() {\n      if (timer) {\n        clearInterval(timer);\n        timer = null;\n      }\n    }\n\n    function setState(newState) {\n      state = newState;\n      container.classList.remove(\"playing\", \"looping\");\n      if (newState === \"forward\" || newState === \"reverse\") {\n        container.classList.add(\"playing\");\n      } else if (newState === \"looping\") {\n        container.classList.add(\"looping\");\n      }\n    }\n\n    function goIdle() {\n      clearTimer();\n      setState(\"idle\");\n      img.src = frames[0]; \/\/ a1\n    }\n\n    function startForward() {\n      clearTimer();\n      setState(\"forward\");\n\n      \/\/ S\u00e9quence : a2 \u2192 a3 \u2192 a4 \u2192 a5 \u2192 a6 \u2192 a7  (indices 1 \u00e0 6)\n      let idx = 1;\n      img.src = frames[idx];\n\n      timer = setInterval(function () {\n        idx++;\n        if (idx > 6) {\n          clearTimer();\n          startLoop();\n        } else {\n          img.src = frames[idx];\n        }\n      }, SPEED);\n    }\n\n    function startLoop() {\n      clearTimer();\n      setState(\"looping\");\n\n      \/\/ Boucle a6 \u2194 a7  (indices 5 \u2194 6)\n      let toggle = 0; \/\/ 0 = a6, 1 = a7\n      img.src = frames[5]; \/\/ a6\n\n      timer = setInterval(function () {\n        toggle = 1 - toggle;\n        img.src = frames[5 + toggle];\n      }, LOOP_SPEED);\n    }\n\n    function startReverse() {\n      clearTimer();\n      setState(\"reverse\");\n\n      \/\/ S\u00e9quence inverse : a5 \u2192 a4 \u2192 a3 \u2192 a2 \u2192 a1  (indices 4 \u2192 0)\n      let idx = 4;\n      img.src = frames[idx];\n\n      timer = setInterval(function () {\n        idx--;\n        if (idx < 0) {\n          clearTimer();\n          goIdle();\n        } else {\n          img.src = frames[idx];\n        }\n      }, SPEED);\n    }\n\n    function onInteraction(e) {\n      if (e.type === \"touchend\") {\n        e.preventDefault();\n      }\n\n      if (state === \"idle\") {\n        startForward();\n      } else if (state === \"looping\") {\n        startReverse();\n      }\n      \/\/ pendant forward \/ reverse \u2192 on ignore les clics\n    }\n\n    container.addEventListener(\"click\", onInteraction);\n    container.addEventListener(\"touchend\", onInteraction, { passive: false });\n\n    \/\/ \u00c9tat initial\n    goIdle();\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", init);\n  } else {\n    init();\n  }\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Une <mark style=\"background-color:#ff33ff\" class=\"has-inline-color has-white-color\">activit\u00e9 paranormale<\/mark> d\u00e9signe un ensemble de faits ou de manifestations suppos\u00e9s qui ne peuvent pas \u00eatre expliqu\u00e9s par les lois de la nature ou par la science. <br>Le mot vient de \u00ab para \u00bb (mon grand-p\u00e8re) et de \u00ab normal \u00bb (ma grand-m\u00e8re).<br>L'une torgnolant l'autre \u00e0 cause de ronflements nocturnes, l'ensemble des \u00e9tudes furent class\u00e9es en rejet scientifique.<br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Une activit\u00e9 paranormale d\u00e9signe un ensemble de faits ou de manifestations suppos\u00e9s qui ne peuvent pas \u00eatre expliqu\u00e9s par les lois de la nature ou par la science. Le mot vient de \u00ab para \u00bb (mon grand-p\u00e8re) et de \u00ab normal \u00bb (ma grand-m\u00e8re).L&rsquo;une torgnolant l&rsquo;autre \u00e0 cause de ronflements nocturnes, l&rsquo;ensemble des \u00e9tudes furent [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[269,31],"tags":[184,134,274,275],"class_list":["post-1100","post","type-post","status-publish","format-standard","hentry","category-experiences","category-fuzzout","tag-cinema","tag-demon","tag-fantome","tag-flash"],"_links":{"self":[{"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/posts\/1100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/comments?post=1100"}],"version-history":[{"count":2,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/posts\/1100\/revisions"}],"predecessor-version":[{"id":1102,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/posts\/1100\/revisions\/1102"}],"wp:attachment":[{"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/media?parent=1100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/categories?post=1100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iconoclaste.net\/blog\/wp-json\/wp\/v2\/tags?post=1100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}