Internet explorer 直接设置“scrollTop”和使用“$.animate”设置之间的区别`
在Internet explorer 直接设置“scrollTop”和使用“$.animate”设置之间的区别`,internet-explorer,scroll,jquery-animate,mousewheel,Internet Explorer,Scroll,Jquery Animate,Mousewheel,在mouseweel事件处理程序中,我更改了一条语句,该语句更新元素的scrollTop: - list.scrollTop(newScrollTop); + list.animate({ + scrollTop: newScrollTop + }, 80); 我添加了这个animate,以使列表平滑滚动,它在Chrome上的工作方式与原始语句相同 但在IE7上,animate版本使滚动无法使用,当我滚动时,列表在屏幕上仅移动约
mouseweel
事件处理程序中,我更改了一条语句,该语句更新元素的scrollTop
:
- list.scrollTop(newScrollTop);
+ list.animate({
+ scrollTop: newScrollTop
+ }, 80);
我添加了这个animate
,以使列表平滑滚动,它在Chrome上的工作方式与原始语句相同
但在IE7上,animate
版本使滚动无法使用,当我滚动时,列表在屏幕上仅移动约10px
这可能是什么原因?它移动10像素,然后停止?@Šime Vidas不完全是这样。这只是一个小动作。这种效果的结果是IE7用户必须大量滚动才能使
列表移动一点。这可能是IE7中的animate
功能阻塞了。这不会让我感到惊讶,因为与现代浏览器相比,IE7的JavaScript性能非常慢。@Šime Vidas我想它应该是关于scrollTop
,因为我们在其他元素上使用了animate
,它们都可以工作。每个newScrollTop
调用滚动内容的次数是多少?也许你只是需要一个更大的IE7值。