我想在滚动时定位横幅:
代码是
$(window).scroll(function(){
offset = $(window).scrollTop()+80;
var h = $(window).height();
if(offset < 80 && offset < (h-800))
{
offset = 80;
}
$('#sidebar1').animate({top:offset}, 450);
});
问题是偏移是动态的,当它向下滚动时它会改变,横幅超出窗口,向下滚动时它会缓慢向上滑动。我想在上下滚动时持续动画。
是否存在像bottom而不是top的属性,或者是否存在除滚动以外的事件以实现常量滚动?
答案 0 :(得分:5)
旧帖子我知道但如果有人在寻找解决方案,请参阅jQuery stop方法,代码如下所示。
$(window).scroll(function(){
offset = $(window).scrollTop()+80;
var h = $(window).height();
if(offset < 80 && offset < (h-800))
{
offset = 80;
}
$('#sidebar1').stop();
$('#sidebar1').animate({top:offset}, 450);
});
答案 1 :(得分:0)
前一段时间我也围绕这个话题提出了一个问题,这可能对你有用。它是上述示例的修改版本 - Floating Scrolling Div with vertical constraints
如果这不是你想要的,也许你可以提供更多关于你的问题的解释,可能是哪些截图,甚至是一个示例网站。
答案 2 :(得分:-1)
以下是关于Chris Hanscom回答的问题的一个非常有趣的主题 - 微软MVP:
在这个帖子中提到...一个很好的小插件,用于在所有可用方向上滚动jquery: JScroller
希望这会有所帮助......