0

使用jquery.waypoints插件,您可以轻松创建粘性元素。它的粘性元素演示显示了一个导航栏,默认情况下该导航栏位于页面顶部下方,然后具有以下行为:a)当用户向下滚动并且导航栏到达视口顶部时,它会粘在那里 b)当用户向上滚动到页面顶部,导航栏返回到其正常位置。

我正在尝试做一些类似但有些相反的事情,这与 scribd 导航栏的效果完全相同。从这个 scribd 页面的最底部开始,慢慢向上滚动以查看效果。

这是怎么做到的?我假设航点会促进它。谢谢。

4

1 回答 1

0

这是我想出的一个解决方案,但仍然对其他实现感兴趣。

js:

//#bottomOfEl is the element you want to stick to the bottom of
$("#bottomOfEl").waypoint(function(ev, dir){ 
    $("#navbar").toggleClass('sticky', dir === "up");
    ev.stopPropagation();
}, {
    offset: function() {return $.waypoints('viewportHeight') 
                                - $(this).height() 
                                - $("#navbar").height();
            } 
})   

CSS:

#navbar {
    height: 40px;
    width: 500px;
    z-index: 10;
}
.sticky { 
    position: fixed;
    bottom: 0px;
}
于 2011-12-13T10:09:58.917 回答