我不确定这个问题的标题是什么,因为它非常复杂。为了演示,我创建了一个 fiddle :
基本上,我正在制作一个网站,其中包含具有不同背景颜色的不同部分。设计师认为当您向下滚动到另一个部分时更改 Logo 的颜色是个好主意,就好像该部分正在“遮盖” Logo (请参阅 fiddle ,这很难解释)。
但是,正如您在 fiddle 中看到的那样,问题是当您滚动得足够快时, Logo 会停止调整大小。有谁知道如何解决这个问题?
由于发布到jsfiddle.net的链接必须附上代码,这里是js(我从实际网站版本中简化了一点):
var $logo = $("#logo");
$(window).scroll(function(){
scrollTop = $(document).scrollTop();
$logo.css("top", scrollTop + "px");
if ( scrollTop + 180 >= 600 ) {
$logo.find(".second").css("height", (scrollTop + 180) - 600 + "px");
}
});
最佳答案
在 if
中添加一个 else
子句
else {
$logo.find(".second").css("height", (scrollTop + 180) - 600 + "px");
}
查看更新 fiddle :http://jsfiddle.net/hbrunar/2W5Jd/1/
如果你不需要在 if
部分做任何其他事情,那么完全跳过它:
关于javascript - jQuery 的滚动功能无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21589379/