1document.addEventListener('DOMContentLoaded', function () { 2 3 // ã¤ã³ã¹ã¿ç»åã®ç»åãä¿è· 4 setTimeout(() => { 5 document.querySelectorAll('img[alt="instagram"]').forEach(protectImage); 6 }, 2000); 7 8 // æåã« img-protect ã¯ã©ã¹ã®ç»åãä¿è· 9 document.querySelectorAll('.img-protect').forEach(protectImage); 10 11 // rel="lightbox" ãã¯ãªãã¯ããã¨ã â Lightbox対ç 12 document.body.addEventListener('click', function (e) { 13 const lightboxLink = e.target.closest('a[rel="lightbox"]'); 14 if (lightboxLink) { 15 setTimeout(() => { 16 protectLightboxImages(); 17 }, 300); 18 } 19 }); 20 21 // Lightbox ç¨ç»åä¿è· 22 function protectLightboxImages() { 23 document.querySelectorAll('.lb-image').forEach(protectImage); 24 } 25 26 // å ±éï¼å³ã¯ãªãã¯ã»ãã©ãã°ãªã©ã®ç¡å¹åå¦ç 27 function protectImage(img) { 28 if (img.dataset.protected) return; 29 img.dataset.protected = 'true'; 30 31 img.onselectstart = () => false; 32 img.onmousedown = () => false; 33 img.addEventListener('contextmenu', (e) => e.preventDefault()); 34 img.addEventListener('dragstart', (e) => e.preventDefault()); 35 } 36 37 38});
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.