2014-06-16 104 views
0

我有一些jQuery脚本的页面。除了IE以外,一切都很好。我无法解决滚动问题。.scrollLeft()方法不起作用

整个页面是一个长横向页面。每次当我改变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无法正常工作滚动?!”

感谢您的回复。

回答

1

我认为你应该使用$("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

+0

谢谢你的尝试,但不工作。 –

+0

尝试使用更新的代码 –