PageSourceSearch

https://aier.org/wp-content/plugins/easy-table-of-contents/assets/…-widget-sticky.min.js?ver=2.0.86-1787761504

js aier.org collected 2026-09-24 08:34:43 UTC 14,813 bytes, 1 lines download raw bytes

1if(window.ezTocWidgetStickyInitialized);else{function ready(t){"loading"!==document.readyState?t():document.addEventListener("DOMContentLoaded",t)}window.ezTocWidgetStickyInitialized=!0,ready(()=>{let t,e=null,n=!1,o=!1,i=!1;const c=document.querySelector(".ez-toc-widget-sticky nav"),s=document.querySelector(".ez-toc-widget-sticky-container");function r(t){if(!t)return null;const e=t.getAttribute("data-href")||t.getAttribute("href");if(!e)return null;const n=e.indexOf("#");if(-1===n)return null;const o=e.slice(n);return o&&"#"!==o?decodeURIComponent(o.slice(1)):null}if(!c||!s)return;function l(){const t=["article",".post-content",".entry-content",".content-area",".main-content",".post-body",".article-content",".single-post",".single-page",".post",".page",'[role="main"]',"main"];for(const e of t){const t=document.querySelector(e);if(t){const e=t.getBoundingClientRect();if(e.width>0&&e.height>0)return t}else console.log("EZ TOC Widget Sticky: No element found for selector:",e)}return document.body}function d(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||window.innerWidth<=768}function a(){if(o||!d())return;const t=document.createElement("div");t.className="ez-toc-mobile-toggle-btn",t.innerHTML='\n            <span class="ez-toc-mobile-toggle-icon">☰</span>\n            <span class="ez-toc-mobile-toggle-text">TOC</span>\n        ';const e=document.createElement("style");e.textContent="\n            .ez-toc-mobile-toggle-btn {\n                position: fixed;\n                top: 50%;\n                right: 0;\n                transform: translateY(-50%);\n                background: #007cba;\n                color: white;\n                padding: 12px 8px;\n                border-radius: 8px 0 0 8px;\n                cursor: pointer;\n                z-index: 10000;\n                box-shadow: -2px 2px 8px rgba(0,0,0,0.2);\n                transition: all 0.3s ease;\n                display: flex;\n                flex-direction: column;\n                align-items: center;\n                gap: 4px;\n                font-size: 12px;\n                font-weight: bold;\n            }\n            \n            .ez-toc-mobile-toggle-btn:hover {\n                background: #005a87;\n                transform: translateY(-50%) translateX(-2px);\n            }\n            \n            .ez-toc-mobile-toggle-icon {\n                font-size: 16px;\n                line-height: 1;\n            }\n            \n            .ez-toc-mobile-toggle-text {\n                font-size: 10px;\n                line-height: 1;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay {\n                position: fixed !important;\n                top: 0 !important;\n                left: 0 !important;\n                right: 0 !important;\n                bottom: 0 !important;\n                width: 100% !important;\n                max-width: 100% !important;\n                height: 100vh !important;\n                z-index: 10001 !important;\n                background: rgba(0,0,0,0.8) !important;\n                display: flex !important;\n                align-items: center !important;\n                justify-content: center !important;\n                padding: 20px !important;\n                box-sizing: border-box !important;\n                border: none !important;\n                border-radius: 0 !important;\n                box-shadow: none !important;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-widget-sticky-content {\n                background: white;\n                border-radius: 12px;\n                max-width: 90%;\n                max-height: 80vh;\n                width: 100%;\n                overflow: hidden;\n                display: flex;\n                flex-direction: column;\n                box-shadow: 0 10px 30px rgba(0,0,0,0.3);\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-widget-sticky-title {\n                padding: 15px 20px !important;\n                border-bottom: 1px solid #eee !important;\n                margin: 0 !important;\n                background: #f9f9f9 !important;\n                border-radius: 12px 12px 0 0 !important;\n                font-size: 18px !important;\n                font-weight: bold !important;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay nav {\n                padding: 20px !important;\n                max-height: 60vh !important;\n                overflow-y: auto !important;\n                flex: 1;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-mobile-close-btn {\n                position: absolute;\n                top: 15px;\n                right: 15px;\n                background: none;\n                border: none;\n                font-size: 24px;\n                cursor: pointer;\n                color: #666;\n                padding: 0;\n                width: 30px;\n                height: 30px;\n                display: flex;\n                align-items: center;\n                justify-content: center;\n                border-radius: 50%;\n                transition: background-color 0.2s ease;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay .ez-toc-mobile-close-btn:hover {\n                background-color: #f0f0f0;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay {\n                opacity: 0;\n                visibility: hidden;\n                transition: opacity 0.3s ease, visibility 0.3s ease;\n            }\n            \n            .ez-toc-widget-sticky-container.mobile-overlay.show {\n                opacity: 1;\n                visibility: visible;\n            }\n            \n            @media (max-width: 768px) {\n                .ez-toc-widget-sticky-container:not(.mobile-overlay) {\n                    display: none !important;\n                }\n            }\n        ",document.head.appendChild(e),document.body.appendChild(t);const n=s.innerHTML;s.innerHTML=`\n            <div class="ez-toc-widget-sticky-content">\n                <button class="ez-toc-mobile-close-btn" aria-label="Close Table of Contents">×</button>\n                ${n}\n            </div>\n        `,t.addEventListener("click",function(){s.classList.add("mobile-overlay","show"),document.body.style.overflow="hidden",s.style.opacity="1",s.style.pointerEvents="auto"});const i=s.querySelector(".ez-toc-mobile-close-btn");function c(){s.classList.remove("show"),setTimeout(()=>{s.classList.remove("mobile-overlay"),document.body.style.overflow=""},200)}i&&i.addEventListener("click",function(){c()}),s.addEventListener("click",function(t){t.target===s&&c()}),document.addEventListener("keydown",function(t){"Escape"===t.key&&s.classList.contains("mobile-overlay")&&c()}),s.addEventListener("click",function(t){t.target.closest("a")&&d()&&(s.classList.remove("show"),s.classList.remove("mobile-overlay"),document.body.style.overflow="")}),o=!0}function u(){if(n||!s)return;if(d())return;const t=l();if("undefined"!=typeof jQuery&&jQuery.fn.stick_in_parent){const o=jQuery;try{const i="undefined"!=typeof ezTocWidgetSticky&&ezTocWidgetSticky.fixed_top_position?parseInt(ezTocWidgetSticky.fixed_top_position):30;o(s).stick_in_parent({inner_scrolling:!1,offset_top:i,sticky_class:"is_stuck",parent:"body"}),n=!0;let c=!1;s.offsetTop,s.style.position;function e(){if(!c)return;const e=window.pageYOffset||document.documentElement.scrollTop,n=t.offsetTop+t.offsetHeight,o=s.offsetHeight;s.offsetTop;if(e+o+i>n){const t=n-o-i;s.style.top=Math.max(i,t)+"px"}else s.style.top=i+"px"}o(window).on("resize",function(){d()?o(s).hasClass("is_stuck")&&o(s).trigger("sticky_kit:recalc"):o(s).hasClass("is_stuck")&&(o(s).trigger("sticky_kit:recalc"),e())}),o(window).on("scroll",function(){o(s).hasClass("is_stuck")&&e()})}catch(r){console.error("EZ TOC Widget Sticky: Error initializing sticky functionality:",r)}}else console.warn("EZ TOC Widget Sticky: jQuery or sticky-kit not available")}d()?a():u();let f=d();function p(t,e){const n=e.getBoundingClientRect(),o=t.getBoundingClientRect();return o.top>=n.top&&o.bottom<=n.bottom}window.addEventListener("resize",function(){const t=d();if(t!==f)if(f=t,t){if(n){if("undefined"!=typeof jQuery&&jQuery.fn.stick_in_parent){jQuery(s).trigger("sticky_kit:detach")}n=!1}a()}else{if(o){const t=document.querySelector(".ez-toc-mobile-toggle-btn");t&&t.remove(),o=!1}u()}}),n||d()||setTimeout(()=>{u()},1e3),setTimeout(()=>{n||d()||u()},3e3),window.addEventListener("load",()=>{n||d()||u(),!o&&d()&&a()}),setTimeout(()=>
1{n||d()||function(){if(!n&&s&&!d())try{const e=l(),o="undefined"!=typeof ezTocWidgetSticky&&ezTocWidgetSticky.fixed_top_position?parseInt(ezTocWidgetSticky.fixed_top_position):30;let i=!1;const c=s.offsetTop,r=s.style.position;function t(){if(d())return;const t=window.pageYOffset||document.documentElement.scrollTop,n=e.offsetTop+e.offsetHeight,l=s.offsetHeight;t>c-o&&!i?(s.style.position="fixed",s.style.top=o+"px",s.style.zIndex="9999",s.classList.add("is_stuck"),i=!0):t+l+o>n&&i?(s.style.position="absolute",s.style.top=n-l-o+"px",s.style.zIndex="9999",s.classList.add("is_stuck")):t<=c-o&&i&&(s.style.position=r,s.style.top="",s.style.zIndex="",s.classList.remove("is_stuck"),i=!1)}e.getBoundingClientRect(),window.addEventListener("scroll",t),window.addEventListener("resize",t),n=!0}catch(a){console.error("EZ TOC Widget Sticky: Error initializing fallback sticky:",a)}}()},5e3);let m=0,y="down";function g(){t=new IntersectionObserver(t=>{if(i)return;!function(){const t=window.pageYOffset||document.documentElement.scrollTop;y=t>m?"down":"up",m=t}();const n=function(){const t=document.querySelectorAll(".ez-toc-widget-sticky nav li a"),e=new Map,n=[];t.forEach(t=>{const o=r(t);if(!o)return;const i=document.getElementById(o);if(!i)return;const c=i.getBoundingClientRect(),s=c.top+window.pageYOffset,l=c.bottom+window.pageYOffset,d=s+c.height/2;e.set(o,t),n.push({id:o,link:t,top:s,bottom:l,center:d,element:i})}),n.sort((t,e)=>t.top-e.top);const o=window.pageYOffset+50;let i=null;if("down"===y){const t=document.querySelector(".ez-toc-widget-sticky nav li.active");if(t){const e=t.querySelector("a");if(e){const t=r(e);if(!t)return null;const c=n.find(e=>e.id===t);if(c)if(o>=c.bottom+100){const e=n.findIndex(e=>e.id===t);i=e<n.length-1?n[e+1]:c}else i=c}}}if(!i){for(let t=0;t<n.length;t++){const e=n[t];if(e.top>=o){i=e;break}}if(!i&&n.length>0&&(i=n[n.length-1]),"up"===y&&i){const t=n.findIndex(t=>t.id===i.id);if(t>0){const e=n[t],c=n[t-1];e.top>o&&(i=c)}}}return i}();if(!n)return;const o=document.querySelectorAll(".ez-toc-widget-sticky nav li a"),s=new Map;o.forEach(t=>{const e=r(t);e&&s.set(e,t)});let l=n.id,d=s.get(n.id);if(d){const t=d.closest("li");if(t){const e=t.querySelectorAll("ul li a"),o=[];if(e.forEach(t=>{const e=r(t);if(!e)return;const n=document.getElementById(e);if(!n)return;const i=n.getBoundingClientRect();i.top<window.innerHeight&&i.bottom>0&&o.push(e)}),o.length>0){let t=null;const e=window.pageYOffset+50;for(let n=0;n<o.length;n++){const i=o[n],c=document.getElementById(i);if(c){if(c.getBoundingClientRect().top+window.pageYOffset>=e){t=i;break}}}t&&n.top<e&&(l=t,d=s.get(t))}}}const a=document.querySelectorAll(".ez-toc-widget-sticky nav li.active");if(d){a.length>0&&a.forEach(t=>{t.classList.remove("active")});const t=d.closest("li");t&&(t.classList.add("active"),e=t,p(t,c)||t.scrollIntoView({behavior:"smooth",block:"center"}))}},{threshold:[0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1],rootMargin:"0px 0px -80% 0px"})}g();const h=[".ez-toc-section","[id] h1, [id] h2, [id] h3, [id] h4, [id] h5, [id] h6","h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]",".ez-toc-heading","[id]"];h.push("[id] H1, [id] H2, [id] H3, [id] H4, [id] H5, [id] H6","H1[id], H2[id], H3[id], H4[id], H5[id], H6[id]");let b=!1;for(const e of h){const n=document.querySelectorAll(e);if(n.length>0){n.forEach(e=>{e.getAttribute("id")&&t.observe(e)}),b=!0;break}}b||console.warn("EZ TOC Widget Sticky: No heading sections found to observe"),c.addEventListener("click",n=>{const o=n.target.closest("a");if(o){const n=r(o);n&&function(t){const n=document.querySelectorAll(".ez-toc-widget-sticky nav li a"),o=document.querySelectorAll(".ez-toc-widget-sticky nav li.active");o.length>0&&o.forEach(t=>{t.classList.remove("active")});let i=null;if(n.forEach(e=>{const n=r(e);n&&n===t&&(i=e)}),i){const t=i.closest("li");t&&(t.classList.add("active"),e=t,p(t,c)||t.scrollIntoView({behavior:"smooth",block:"center"}))}}(n),d()&&s.classList.contains("mobile-overlay")&&(s.classList.remove("show"),s.classList.remove("mobile-overlay"),document.body.style.overflow=""),i=!0,t.disconnect(),setTimeout(()=>{i=!1,g();const e=[".ez-toc-section","[id] h1, [id] h2, [id] h3, [id] h4, [id] h5, [id] h6","h1[id], h2[id], h3[id], h4[id], h5[id], h6[id]",".ez-toc-heading","[id]"];e.push("[id] H1, [id] H2, [id] H3, [id] H4, [id] H5, [id] H6","H1[id], H2[id], H3[id], H4[id], H5[id], H6[id]");for(const n of e){const e=document.querySelectorAll(n);if(e.length>
10){e.forEach(e=>{e.getAttribute("id")&&t.observe(e)});break}}},3e3)}}),document.addEventListener("click",t=>{const e=t.target.closest("a");if(e&&d()&&s.classList.contains("mobile-overlay")){e.closest(".ez-toc-widget-sticky-container")&&(s.classList.remove("show"),s.classList.remove("mobile-overlay"),document.body.style.overflow="")}}),s.addEventListener("click",t=>{t.target.closest("a")&&d()&&s.classList.contains("mobile-overlay")&&(s.classList.remove("show"),s.classList.remove("mobile-overlay"),document.body.style.overflow="")})})}document.addEventListener("DOMContentLoaded",function(){const t=document.querySelector(".ez-toc-widget-sticky-container");let e=document.querySelector("article");function n(){if(!t||!e)return;if(t.classList.contains("mobile-overlay")||t.classList.contains("show"))return t.style.opacity="1",void(t.style.pointerEvents="auto");const n=t.getBoundingClientRect(),o=e.getBoundingClientRect();n.top>=o.top&&n.bottom<=o.bottom?(t.style.opacity="1",t.style.pointerEvents="auto"):(t.style.opacity="0",t.style.pointerEvents="none")}document.querySelector("article")?e=document.querySelector("article"):document.querySelector(".post-content")?e=document.querySelector(".post-content"):document.querySelector(".entry-content")?e=document.querySelector(".entry-content"):document.querySelector(".single-post-content")?e=document.querySelector(".single-post-content"):document.querySelector(".content-area")&&(e=document.querySelector(".content-area")),n(),document.addEventListener("scroll",n),window.addEventListener("resize",n)});

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.