PageSourceSearch

https://www.klariano.com/reveal.js

js klariano.com collected 2026-10-10 01:41:15 UTC 2,266 bytes, 40 lines download raw bytes

1/* Klariano — Scroll-Reveal für Headings und Texte.
2   Elemente blenden erst ein, wenn der Nutzer scrollt (wie auf /ueber-uns/). */
3(function(){
4  var reduce=window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches;
5  if(reduce||!('IntersectionObserver' in window))return;
6  var HEADS='.pitch .section__h2,.reviews .section__h2,.faq .section__h2,.section__head .section__h2,.section__h3';
7  var ITEMS='.pitch__p,.section__sub';
8  var scrolled=(window.scrollY||window.pageYOffset||0)>4,pending=[];
9  function onScroll(){if(scrolled)return;scrolled=true;pending.forEach(show);pending=[];
10    window.removeEventListener('scroll',onScroll);window.removeEventListener('touchmove',onScroll);window.removeEventListener('wheel',onScroll);}
11  window.addEventListener('scroll',onScroll,{passive:true});
12  window.addEventListener('touchmove',onScroll,{passive:true});
13  window.addEventListener('wheel',onScroll,{passive:true});
14  function show(el){
15    var p=el.parentElement,sibs=p?[].slice.call(p.children).filter(function(n){return n.classList.contains('u-r')||n.classList.contains('u-h')}):[];
16    var i=Math.max(0,sibs.indexOf(el));
17    el.style.animationDelay=(Math.min(i,4)*0.09)+'s';
18    el.classList.add('uin');
19  }
20  var io=new IntersectionObserver(function(es){
21    es.forEach(function(e){
22      if(!e.isIntersecting)return;
23      io.unobserve(e.target);
24      if(scrolled)show(e.target);else pending.push(e.target);
25    });
26  },{threshold:.18,rootMargin:'0px 0px -8% 0px'});
27  function skip(el){
28    return el.closest('.cta')||el.closest('.statement')||el.closest('.cl-show')||el.closest('nav')||el.closest('.footer')||el.hasAttribute('data-revealed');
29  }
30  function scan(){
31    [].slice.call(document.querySelectorAll(HEADS)).forEach(function(el){
32      if(skip(el))return;el.setAttribute('data-revealed','');el.classList.add('u-h');io.observe(el);
33    });
34    [].slice.call(document.querySelectorAll(ITEMS)).forEach(function(el){
35      if(skip(el))return;el.setAttribute('data-revealed','');el.classList.add('u-r');io.observe(el);
36    });
37  }
38  function init(){scan();[300,900,1800].forEach(function(ms){setTimeout(scan,ms)});}
39  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();
40})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.