我是相当新的jquery,似乎不明白为什么我的代码不工作。我有一个水平布局,并希望使用scrollLeft()函数(它与这个代码完美)
$("#next").click(function() { currentElement = currentElement.next(); scrollTo(currentElement); }); function scrollTo(element) { $(window).scrollLeft(element.position().left); }
但理想情况下,我想动画这样,以便当#next被点击时,有一个很好的动画效果滚动左功能
$("#next").click(function() { currentElement = currentElement.next(); scrollTo(currentElement); }); function scrollTo(element) { $(window).animate({scrollLeft: element.position().left},750); }
但没有效果。我究竟做错了什么?
解决方法
你会想要这样的:
$("#next").click(function(){ var currentElement = currentElement.next(); $('html,body').animate({scrollLeft: $(currentElement).offset().left},800); return false; });
我相信这应该工作,它通过一个scrollTop函数。