我正在使用一个动画侧边栏,它与窗口滚动一起滚动并在到达页脚时停止。
jQuery(document).ready(function() {
var jQuerysidebar = jQuery("#sb"),
jQuerywindow = jQuery(window),
offset = jQuerysidebar.offset(),
sbh = jQuerysidebar.height(),
footer = jQuery("#footer").offset().top;
jQuerywindow.scroll(function() {
if ( jQuerywindow.scrollTop() > offset.top ) {
if (jQuerywindow.scrollTop() + jQuerysidebar.height() < footer) {
jQuerysidebar.stop().animate({
marginTop: jQuerywindow.scrollTop() - 8
});
}
} else{
jQuerysidebar.stop().animate({
marginTop: 0
});
}
});
});
由于侧边栏高度>窗口高度,我无法轻易访问侧边栏的底部:当我向下滚动时,它也会下降......
我希望侧边栏只有在我到达终点后才开始滚动......到目前为止,我只能部分获得这个结果:
if ( jQuerywindow.scrollTop() > jQuerysidebar.height() ) {
很明显,在 scrollTop 值大于侧边栏高度之后,它会再次滚动......所以这段代码只工作一次:D
有没有更好的方法让侧边栏只有在我到达终点后才滚动?
我也尝试过其他解决方案,但每次新尝试都会遇到一些不同的问题。(我是使用 jquery 的新手......)
谢谢你的帮助:)