1window.addEventListener('DOMContentLoaded', () => { 2 3 const main = document.querySelector('#main'); 4 5 if (main) { 6 const lazyIframes = main.querySelectorAll('[data-lazy-type="lazy"]'); 7 let isUserInteracted = false; 8 9 function getDeviceType() { 10 const width = window.innerWidth; 11 if (width >= 1024) { 12 return 'desktop'; 13 } else if (width >= 768) { 14 return 'tablet'; 15 } else { 16 return 'mobile'; 17 } 18 } 19 20 function loadIframes() { 21 lazyIframes.forEach(iframe => { 22 if (!iframe.src && iframe.dataset['lazySrc']) { 23 let get_device = getDeviceType(); 24 25 if(!$(iframe).attr('device') || $(iframe).attr('device') == 'all' || $(iframe).attr('device') == get_device){ 26 let newSrc = iframe.dataset['lazySrc'].replaceAll('?&', '?'); 27 if (newSrc.includes('autoplay')) { 28 newSrc += '&muted=1'; 29 newSrc += '&mute=1'; 30 } 31 iframe.src = newSrc; 32 $(iframe).attr('frameborder', '0'); 33 } 34 } 35 }); 36 } 37 38 $('body,html').one("touchstart touchmove scroll mousemove mousedown DOMMouseScroll mousewheel keyup", function(e){ 39 if(!isUserInteracted){ 40 loadIframes(); 41 } 42 isUserInteracted = true; 43 }); 44 45 setTimeout(() => { 46 if (!isUserInteracted) { 47 loadIframes(); 48 isUserInteracted = true; 49 } 50 }, 2000); 51 } 52}); 53 54 55
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.