(function(){ var c=document.createElement('div'); c.className='t-cur'; var r=document.createElement('div'); r.className='t-cur-r'; document.body.appendChild(c); document.body.appendChild(r); var mx=0,my=0,tx=0,ty=0; document.addEventListener('mousemove',function(e){ mx=e.clientX; my=e.clientY; c.style.transform='translate('+(mx-6)+'px,'+(my-6)+'px)'; }); (function loop(){ tx+=(mx-tx)*0.12; ty+=(my-ty)*0.12; r.style.transform='translate('+(tx-18)+'px,'+(ty-18)+'px)'; requestAnimationFrame(loop); })(); /* Анимация появления при скролле */ var els=document.querySelectorAll('.t-rec'); els.forEach(function(el){ el.style.opacity='0'; el.style.transform='translateY(32px)'; el.style.transition='opacity .8s cubic-bezier(.23,1,.32,1), transform .8s cubic-bezier(.23,1,.32,1)'; }); var io=new IntersectionObserver(function(entries){ entries.forEach(function(e){ if(e.isIntersecting){ e.target.style.opacity='1'; e.target.style.transform='none'; } }); },{threshold:0.1}); els.forEach(function(el){ io.observe(el); }); })();