1// ç»åã©ã¤ãããã¯ã¹: è¨äºæ¬æ(.article-body)ã®ç»åã¯ãªãã¯ã§å寸表示ããã 2// Esc 㯠<dialog> ã®ãã¤ãã£ãæåãèæ¯(::backdrop)ã¯ãªãã¯ã¨ç»åã¯ãªãã¯ã§éããã 3(function () { 4 var dialog = document.createElement('dialog'); 5 dialog.id = 'lightbox'; 6 dialog.setAttribute('aria-label', 'ç»åã®å寸表示'); 7 var img = document.createElement('img'); 8 dialog.appendChild(img); 9 document.body.appendChild(dialog); 10 11 // èæ¯ã¯ãªãã¯ã¨ç»åèªä½ã®ã¯ãªãã¯ã§éããã 12 // ç»åä¸ã®ãã©ãã°ç§»å(ã¹ã¯ãã¼ã«æä½)ã¯ãã©ã¦ã¶ã click ãçºç«ããªããã誤éãããªãã 13 dialog.addEventListener('click', function (e) { 14 if (e.target === dialog || e.target === img) dialog.close(); 15 }); 16 17 // ã¤ãã³ãå§è²: æ¬æã® img ã®ã¿ææããªã³ã¯(<a>)å ã®ç»åã¯ãªã³ã¯åªå ã§é¤å¤ã 18 document.addEventListener('click', function (e) { 19 var target = e.target; 20 if (!(target instanceof HTMLImageElement)) return; 21 if (!target.closest('.article-body') || target.closest('a')) return; 22 // srcset é使ç¨ã ã currentSrc ãåªå (å°æ¥ã®ãã¯ãã£ã¼å¯¾å¿ã§ãå®è¡¨ç¤ºãã³ãã¼) 23 img.src = target.currentSrc || target.src; 24 img.alt = target.alt; 25 dialog.showModal(); 26 }); 27})();
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.