// if ('scrollRestoration' in history) { // history.scrollRestoration = 'manual'; // } // currentState = history.state; // if (currentState) { // console.log(currentState.position); // $(document).scrollTop(currentState.position); // } // document.addEventListener("DOMContentLoaded", function (event) { // var initSlidesPerView = 3; // // mySwiper2 = new Swiper('.bestsellers', { // // slidesPerView: initSlidesPerView, // // pagination: '.bestsellers.swiper-pagination', // // nextButton: '.swiper-button-next-bestsellers', // prevButton: '.swiper-button-prev-bestsellers', // // }); // mySwiper3 = new Swiper('.discounts', { // // slidesPerView: initSlidesPerView, // // pagination: '.discounts.swiper-pagination', // // nextButton: '.swiper-button-next-discounts', // prevButton: '.swiper-button-prev-discounts', // // }); // var firstTop; // var prevPage = "{$currentPage}"; // $(window).scroll(function () { // // get the scroll position of the document + half the window height // var scrollTop = $(document).scrollTop() + ($(window).height() / 2); // var positions = []; // // // push each of the items we want to check against to an array with their position and selector // $('.pr').each(function () { // $(this).removeClass("active"); // positions.push({position: ($(this).offset().top + ($(this).height() / 2)), element: $(this)}); // }); // // var getClosest = closest(positions, scrollTop); // getClosest.addClass("active"); // the element closest to the middle of the screen // // let url = window.location.href.split('?')[0]; // // let page = getClosest.attr("data-page-index"); // // if (prevPage != page) { // firstTop = $('.product-list').find("[data-page-index='" + page + "']").first().offset().top; // prevPage = page; // } // // let obj = { // 'page': page, // 'position': (scrollTop - firstTop) // }; // // console.log(scrollTop - firstTop); // //history.pushState(null, "page " + page, url + '?p=' + page); // //console.log(getClosest.attr("data-page-index")); // }); // $(document).on('click', '.pr a', function (e) { // e.preventDefault(); // thistop = $(document).scrollTop() - $(this).offset().top; // let page = $(this).closest('.pr').attr("data-page-index"); // let obj = { // 'page': page, // 'position': $(this).offset().top - $('.product-list').find("[data-page-index='" + page + "']").first().offset().top + 200, // 'scrollRestoration': 'manual' // }; // let url = window.location.href.split('?')[0]; // history.replaceState(obj, "page " + page, url + '?p=' + page); // document.location.href = $(this).attr('href'); // }); // // // finds the nearest position (from an array of objects) to the specified number // function closest(array, number) { // var num = 0; // for (var i = array.length - 1; i >= 0; i--) { // if (Math.abs(number - array[i].position) < Math.abs(number - array[num].position)) { // num = i; // } // } // return array[num].element; // } // });