当元素滚动出屏幕时更改元素位置
change element position when it scrolled out of screen
我的网页中有两个菜单,其中包含:menu1 menu2 content footer。
当我向上滚动时,我希望菜单2保持不变,但会在顶部(而不是菜单1)所以滚动后:菜单2内容页脚
感谢
刚刚用jquery做了一个小的jsfiddle。应该很容易理解。
HTML
<div id="menu1">
Menu 1
</div>
<div id="menu2">
Menu 2
</div>
<div id="content">
Content
</div>
<div id="footer">
Footer
</div>
Javascript
$( window ).scroll(function() {
if($(window).scrollTop() >= $("#menu1").height() && $("#menu2").css("position") != "fixed"){
$("#menu2").css("position", "fixed");
$("#menu2").css("top", "0");
$("#content").css("margin-top", $("#menu2").height() + "px");
}
else if($(window).scrollTop() < $("#menu1").height() && $("#menu2").css("position") == "fixed")
{
$("#menu2").css("position", "");
$("#menu2").css("top", "");
$("#content").css("margin-top", "");
}
});
http://jsfiddle.net/oaa1e6y2/3/
如果您对此有任何问题,请随时询问。
相关文章:
- 使用javascript查找元素位置的最快方法
- 当静态元素与滚动上的固定元素位置重叠时进行检测
- 另一个元素JAVAscript中的元素位置
- CSS.滚动后元素位置发生变化
- JQuery Mobile单击事件不起作用,具体取决于HTML中的元素位置
- 正在查找表行中的td元素位置
- jquery追加元素位置始终为0
- 如何通过JS移动元素位置而不闪烁
- 当按钮点击更改元素位置时,Javascript
- 在事件发生时获取元素位置的当前页面 URL,并将该 URL 输出到另一个页面上
- 更改 JS/D3 页上的元素位置
- 字典中由元素:位置对组成的移动元素
- 观察元素位置并对 AngularJS 中的更改做出反应
- JavaScript 设置宽度尺寸会更改元素位置
- Angularjs 获取元素位置
- 按类名获取元素位置
- 从数组中获取元素位置
- 如何在更改选择元素宽度时固定所有元素位置
- 破解以在滚动条出现时保持水平元素位置
- 将第一个数组中的元素位置与另一个数组进行比较