我有一些jQuery脚本的页面。除了IE之外,一切都很好。我无法解决滚动问题。

整页是一个较长的水平页。每次更改PAGE(页面的标识符)时,Web都应向左或向右滚动。这是我如何处理先前的按钮动作的一些代码:

$('#previous').click(function() {
        var width = $(window).width();
        var leftOffset = $(document, window).scrollLeft();
        var browser = get_browser();
        hidePaging();

        $((browser == "Firefox" || browser == "msie") ? "html" : "body").animate({
            scrollLeft: page > 2 ? width * 2 : leftOffset - width
            },
            1000,
            function () {
                page = page > 2 ? 2 : page - 1;
                console.log(page);
                fixPagingAppearance();
            }
        );
    });


我的问题是:“为什么在IE中无法滚动?!”

谢谢您的回复。

最佳答案

我认为您应该使用$("html,body").animate({--your code--})而不是$("html")$("body")

替换此行:

var leftOffset = $(document, window).scrollLeft();



 var leftOffset = $(document).scrollLeft();


对于IE。

参考:http://forum.jquery.com/topic/animate-scrollleft-get-problems-in-ie-and-ff

10-08 19:01