我正在使用此代码:EXAMPLE
根据“image-ul”是否完全位于浏览器窗口底边之上,将使div以不同的速度滚动,就像它应该的那样。但我遇到的问题是当慢速滚动div到达页面顶部的某个地方时滚动不顺畅。他们似乎停了一会儿,甚至有时会向相反的方向滚动。
response has already started
答案 0 :(得分:0)
示例代码对我来说并不慢,因此它可能特定于您的计算机或浏览器。
但是,您可以执行以下操作:
不要在你不需要的地方使用jQuery。 jQuery比使用本机JS函数(例如document.getElementById
)显着慢。
不要反复使用jQuery选择器。每次使用jQuery选择器时,都会遇到性能损失。例如,而不是:
function(){
var Div_one_top = $('#image-ul').offset().top,
Div_one_height = $('#image-ul').outerHeight(true);
}
这样做:
var imageUl = $('#image-ul');
function(){
imageUl.offset().top,
imageUl.outerHeight(true);
}
这个例子应该会提高性能。每次页面无缘无故地滚动时,您都会执行多个jQuery选择器。
性能密集型产品的最佳选择是完全删除jQuery并手工完成。