滚动时固定在页面顶部的菜单栏会导致下面的内容在滚动过程中跳转
Menu bar fixed at top of the page when scrolling is causing content underneath to jump during scroll
我试图让子菜单在滚动时滚动时停留在页面顶部,一旦它在滚动过程中到达顶部。这是我到目前为止所拥有的:
$(window).scroll(function () {
if ($(window).scrollTop() > 175) {
$('#location_menu').css('position', 'fixed').css('top','0px').css('z-index','1000');
$('.first').css('padding-top','415');}
else {
$('#location_menu').css('position', 'relative').css('z-index','1');
}});
我遇到的问题是滚动不流畅,一旦元素从位置:相对更改为位置:固定,内容似乎跳跃/跳过大约 415px,与子菜单的高度相同。
这是 css:
<div id="location_menu" >submenu content
</div>
<div id="content" class="location_detail first">content beneath submenu
</div>
我已经为.first
添加了行,当页面滚动并达到页面顶部的 175px 以内时,具有 415px 的填充顶部.css('padding-top','415')
但这实际上似乎并没有做任何事情。没有变化,所以我假设我执行错误了。
我应该使用上面列出的其他滚动功能吗?
这是我最终用来解决我的问题的方法,基于 @Danko 中的代码:
$(window).scroll(function () {
var $conten = $('.first'),
$menu = $('#location_menu')
scrollpos = $(window).scrollTop();
if (scrollpos >= 175) {
$conten.css('padding-top','365px');
$menu.css('position', 'fixed').css('top','0px').css('z-index','1000');
} else {
$conten.css('padding-top','0');
$menu.css('position', 'fixed').css('position', 'relative').css('z-index','1');
}
});
Edit
好的,现在我明白了这个问题,我 http://codepen.io/anon/pen/BdkLf 做了这个演示。
功能实际上是这样的:
$(window).scroll(function () {
var $menu = $('#location_menu'),
$conten = $('#content'),
scrollpos = $(window).scrollTop();
if (scrollpos >= 175) {
$menu.css( {
"top" : "0",
"position": "fixed",
});
$conten.css('top','375px' );
} else {
$menu.css( {
"position": "relative",
"top" : "175px",
});
$conten.css('top','175px');
}
});
这里的175
等于与顶部的初始距离,375
是距离和菜单height
之间的相加
相关文章:
- 如何用javascript调用函数,然后在滚动事件中调用该函数的特定实例
- 在提交过程中使用同步确认灯箱提交表格
- 在电子商务结账过程中显示特定于上下文的错误
- Grunt排除在生成过程中插入某些文件
- 如何确定滚动DIV中的可见DOM元素
- 如何使用javascript检测不可滚动元素中的滚动事件和方向
- JavaScript:如何在迭代过程中修改数组中的值
- 如何获取滚动DIV中的当前活动文本
- 如何检查是否存在“;没有到主机的路由”;在流式传输视频的过程中一遍又一遍
- 在asp.net页面中显示javascript执行过程中的加载图标
- 在网格视图的自动刷新过程中,设置内部网格视图文本框的可见性
- ng-show内容在页面加载过程中闪烁,尽管它不是真实的,并且ng-cloak不适用于FF
- 如何在初始化过程中引用同一对象内的对象字段
- 使用固定位置固定标题会导致内容在滚动过程中跳到标题下方
- 在滚动过程中抓住Div id时,Div id为空
- 拉动刷新:滚动过程中触摸可将滚动条设置为页面底部
- 滚动时固定在页面顶部的菜单栏会导致下面的内容在滚动过程中跳转
- 滚动过程中的错误行为,根据代码的链接方式显示
- 引导导航条(固定导航条)在滚动过程中调整大小
- 如何在滚动过程中保持悬停,或者如何检测未滚动