1console.log('Main.js at your service!!!!') 2 3document.querySelector('.scrollToTop') && 4document.querySelector('.scrollToTop').addEventListener('click', () => 5 window.scrollTo({ top: 0, behavior: 'smooth' })) 6 7function openCloseMenu(e){ 8 e.preventDefault() 9 document.getElementById('mobileMenu').toggleAttribute('hidden') 10 document.querySelector('.overlay').toggleAttribute('hidden') 11} 12 13document.querySelector('.burger') && 14document.querySelector('.burger').addEventListener('click', openCloseMenu) 15 16document.querySelector('.close') && 17document.querySelector('.close').addEventListener('click', openCloseMenu) 18 19document.querySelector('.overlay') && 20document.querySelector('.overlay').addEventListener('click', openCloseMenu) 21 22 23document.addEventListener('DOMContentLoaded', () => { 24 document.querySelectorAll('.table_of_contents').forEach(toc => { 25 const header = toc.querySelector('.table_of_contents_header'); 26 27 header.addEventListener('click', () => { 28 toc.classList.toggle('open'); 29 }); 30 }); 31}); 32 33 34for (let b of document.querySelectorAll("button")) { 35 if (b.classList.contains("table_of_contents_header")) { 36 continue; 37 } 38 39 b.addEventListener("click", function () { 40 let goal = this.getAttribute("data-goal"); 41 let link = ""; 42 let split = this.getAttribute("data-split"); 43 44 location.href = `${link}&split=${split}`; 45 }); 46} 47 48const handleScroll = () => { 49 if ( window.scrollY > 1000) { 50 document.querySelector('.scrollToTop').style.opacity = '1'; 51 } else { 52 document.querySelector('.scrollToTop').style.opacity = '0'; 53 } 54} 55 56window.addEventListener('scroll', handleScroll); 57 58 59document.addEventListener("DOMContentLoaded", function () { 60 const links = document.querySelectorAll(".visit-link"); 61 const targetUrl = "https://top-online-casinos-rating.com/"; 62 63 links.forEach(link => { 64 link.addEventListener("click", function (e) { 65 e.preventDefault(); 66 67 const goal = this.dataset.goal; 68 69 if (typeof ym === "function" && goal) { 70 try { 71 ym(109645754, "reachGoal", goal); 72 console.log(`goal ${goal} reached`) 73 } catch (err) {} 74 } 75 76 window.open(targetUrl, "_blank"); 77 }); 78 }); 79}); 80 81 82 83setTimeout( function(){
vendor: 405 bytes, lines 83-89
83 84 (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; 85 m[i].l=1*new Date(); 86 for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} 87 k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) 88 (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); 89 ym(
89109645754
vendor: 126 bytes, lines 89-96
89, "init", { 90 clickmap:true, 91 trackLinks:true, 92 accurateTrackBounce:true, 93 webvisor:true 94 }); 95 96
96let thirdScroll = false 97 let halfScroll = false 98 let fullScroll = false 99 100 window.onscroll = function() { 101 102 let pageY = window.scrollY 103 let innerHeight = document.documentElement.scrollHeight; 104 let delta = innerHeight / pageY; 105 106 if( delta >= 2 && thirdScroll == false ){ 107 thirdScroll = true 108 ym(109645754,'reachGoal','partsScrollGoal1') 109 } 110 111 if( delta <= 2 && delta >= 1.5 && halfScroll == false ){ 112 halfScroll = true 113 ym(109645754,'reachGoal','partsScrollGoal2') 114 } 115 116 if( delta <= 1.5 && fullScroll == false ){ 117 fullScroll = true 118 ym(109645754,'reachGoal','partsScrollGoal3') 119 } 120 } 121 122}, 3000 )
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.