这甚至假设通过向下添加类来移动div。但它提前到了? .title还没有登上顶峰,它已经在旅途中了!?
$(document).ready(function(){
$(window).scroll(function() {
var moveit = $('.title'), //the titles are to move
targetScroll = $('.title').position().top, //when .title is at top
currentScroll = $(document.body).scrollTop();
moveit.toggleClass('down', currentScroll >= targetScroll);
});
});
#box #left ul li:hover .down {
top: 500px;
}
.down早早被包含在内。
我做错了什么......它盯着我的脸不是吗?
答案 0 :(得分:0)
这是因为jQuery使用它自己的队列来处理动画。它只是迈向下一行。如果您想知道滚动何时完成,最好使用scrollTo
插件:http://flesler.blogspot.com/2007/10/jqueryscrollto.html
这将允许您输入完成滚动时执行的功能。使用哈希对象中的onAfter
参数。
<强>更新强>
我希望我找到了。您正在核对document.body
。滚动值始终为正文的0。所以请检查:$(document).scrollTop()
。