在进行野生动物园旅行时,Magento保持滚动位置

时间:2019-04-08 07:43:24

标签: javascript magento magento-1.9

当我单击产品页面然后转到产品时,我正在使用Magento 1.9.4.0,并且在每个浏览器上使用。再次返回产品时,滚动位置保持不变。除了Safari外,我不明白为什么它不适用于Safari。

这是我尝试使用的一些代码,但是这些都不起作用。我在Scroll.js文件中使用了此代码。

var Scroll = {
    mainMenuHeight: 0,


    init : function() {
        jQuery('document').ready( function() {
            Scroll.scroll();
            Scroll.anchorClick();
            Scroll.hashOnLoad();
            Scroll.toTop();
        });

        jQuery(document).ready(function() {
            // If scroll location cookie is set, and the location is the same
            //scroll to the position saved in the scroll cookie.
            if ( jQuery.cookie("scroll") !== null && jQuery.cookie("location") !== null
                && jQuery.cookie("location") == jQuery(location).attr('href')) {
                jQuery(document).scrollTop( jQuery.cookie("scroll") );
            }

            jQuery("#grid").click(function () {
                // Set cookie with current location
                jQuery.cookie("location", jQuery(location).attr('href'));
                // Set cookie with current scrollposition from the top
                jQuery.cookie("scroll", jQuery(document).scrollTop() );
            });
        });

    },
}

这:

var Scroll = {
    mainMenuHeight: 0,

    init: function() {
        jQuery('document').ready(function() {
            Scroll.scroll();
            Scroll.anchorClick();
            Scroll.hashOnLoad();
            Scroll.toTop();
        });
        jQuery(function() {
            var pathName = document.location.pathname;
            window.onbeforeunload = function() {
                var scrollPosition = jQuery(document).scrollTop();
                sessionStorage.setItem("scrollPosition_" + pathName,
                    scrollPosition.toString());
            }
            if (sessionStorage["scrollPosition_" + pathName]) {
                jQuery(document).
                    scrollTop(
                        sessionStorage.getItem("scrollPosition_" + pathName));
            }
        });
    },
}

我希望在Safari中返回时滚动位置也保持不变。它适用于某些产品,但不适用于所有产品...

1 个答案:

答案 0 :(得分:0)

所以我设法自己解决了这个问题。该文件来自scriptaculous,名为“ slider.js”。我禁用了此文件,问题消失了!