PageSourceSearch

https://www.leonisa.com/cdn/shop/t/134/assets/infinite-scroll.js?v=180922521785223757061773091493

js leonisa.com collected 2026-10-03 20:50:41 UTC 3,575 bytes, 2 lines download raw bytes

1document.addEventListener("DOMContentLoaded",function(){let infScroll;document.querySelectorAll(".pagination__next").forEach(link=>{link.href=link.href.replace(/&phcursor=[^&]*/,"")});const initializeInfiniteScroll=()=>{infScroll&&infScroll.destroy&&infScroll.destroy(),infScroll=new InfiniteScroll(".infiniteloop",{path:".pagination__next",append:".loopload",status:".page-load-status",scrollThreshold:300,history:!1});const paginationEl=document.querySelector(".pagination");paginationEl&&(paginationEl.style.display="none"),infScroll.on("last",()=>{console.log("No more pages to load.");const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none")}),infScroll.on("error",()=>{console.log("Error loading next page.");const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none")}),infScroll.on("load",(body,path)=>{if(console.log("Page loaded from path:",path),!document.querySelector(".pagination__next")){const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none")}}),console.log("Infinite Scroll v4 initialized")},scrollToProduct=productEl=>{const topPosition=productEl.getBoundingClientRect().top+window.scrollY;window.scrollTo({top:topPosition,behavior:"smooth"}),sessionStorage.removeItem("lastClickedProductId")},loadPagesUntilFound=()=>{const lastClickedProductId=sessionStorage.getItem("lastClickedProductId");if(!lastClickedProductId)return;
1const product=document.querySelector(`[data-product-id="${lastClickedProductId}"]`);if(product)console.log("Producto encontrado:",product),scrollToProduct(product);else if(document.querySelector(".pagination__next"))console.log("Cargando la siguiente p\xE1gina..."),infScroll.loadNextPage(),setTimeout(loadPagesUntilFound,500);else{console.log("No more pages to load.");const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none")}};document.addEventListener("change",event=>{if(event.target.closest(".filter-form")){console.log("Filter changed. Reinitializing Infinite Scroll...");const container2=document.querySelector(".infiniteloop");container2&&(container2.innerHTML="");const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none"),initializeInfiniteScroll(),loadPagesUntilFound()}});const container=document.querySelector(".infiniteloop");container&&container.addEventListener("click",event=>{const item=event.target.closest(".grid__item");if(item&&item.dataset.productId){sessionStorage.setItem("lastClickedProductId",item.dataset.productId),sessionStorage.setItem("scrollPosition",window.scrollY);const collectionHandle=window.location.pathname.split("/collections/")[1]?.split("/")[0];collectionHandle&&sessionStorage.setItem("lastCollectionHandle",collectionHandle)}}),initializeInfiniteScroll();const currentCollectionHandle=window.location.pathname.split("/collections/")[1]?.split("/")[0],storedCollectionHandle=sessionStorage.getItem("lastCollectionHandle");if(sessionStorage.getItem("lastClickedProductId")&&currentCollectionHandle&&storedCollectionHandle===currentCollectionHandle?loadPagesUntilFound():(sessionStorage.removeItem("lastClickedProductId"),sessionStorage.removeItem("scrollPosition"),sessionStorage.removeItem("lastCollectionHandle")),document.querySelectorAll(".loopload").length<=28){const statusEl=document.querySelector(".page-load-status");statusEl&&(statusEl.style.display="none")}});
2//# sourceMappingURL=/cdn/shop/t/134/assets/infinite-scroll.js.map?v=180922521785223757061773091493

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.