javascript - 在滚动了这么多 div 之后锁定屏幕上的 div?

标签 javascript jquery css html scroll

我目前正在尝试找到一种方法,在大部分标题滚出顶部后将其锁定在屏幕上。

因此,例如,如果我的标题为 150 像素高,那么当用户向下滚动我的页面时顶部 135 像素已经滚出顶部后,我是否可以锁定屏幕顶部底部的 15 像素?这样无论我的页面变得多长,它的顶部始终会保留标题底部的 15 个像素。

我还需要在用户向上滚动时反转它,以便标题可以返回到它的原始状态。

我已经尝试了一个肮脏的工作,即在我的原始标题后面放置另一个 15 像素高的标题和一个“固定”位置,这样当完整的 150 像素原始标题离开屏幕时,我的新标题会从后面出现它。这确实有效,但如果用户在中点捕获它,它看起来很可耻。

我对 JavaScript 的了解极其有限,我担心这可能就是我的答案所在。

最佳答案

我对你想要什么有点困惑..从你所说的..我想你做了和我做的一样的事情..但你出于某种原因不喜欢它..

无论如何..如果我没猜错,这应该可行。

http://jsfiddle.net/5pJuJ/

本质上,有一个位于 fixed 位置的元素位于标题后面,它位于顶部 fixed ,因此一旦向下滚动就会显示出来。


哦,对了..如果有渐变之类的东西,这就不太管用了..那是问题所在吗?

我这样做是为了证明我认为您遇到的问题.. http://jsfiddle.net/5pJuJ/1/ (我认为你应该提供...grr..)


这似乎很好地满足了您的需求:

http://imakewebthings.github.com/jquery-waypoints/

http://imakewebthings.github.com/jquery-waypoints/sticky-elements/

关于javascript - 在滚动了这么多 div 之后锁定屏幕上的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7215728/

相关文章:

javascript - 水平排列动态内容

JavaScript Canvas 尺寸

javascript - 获取两个 Moment 日期/时间之间的日期/时间

jquery - 在多个选项卡集中定位一个选项卡集

javascript - jQuery iPhone 风格复选框事件

html - 单击更改光标以获得带有 css 的图像映射链接

javascript - 更新电子邮件验证状态而不重新加载页面

jquery - 如何删除应用于下拉菜单的默认 Bootstrap 效果?

css - 如何仅使用CSS制作分页 slider 的圆圈?

html - Div 图像和文本对齐