javascript - 固定的滚动顶部菜单不允许到达屏幕底部

标签 javascript jquery html css fixed

我的固定顶部菜单有一个奇怪的行为。屏幕高度是动态的(取决于数据库检索的注册表数量)。当注册表数量创建一个滚动条,但高度不足以覆盖所有菜单时,屏幕弹跳并且不允许我到达底部(滚动条再次跳起来,无论如何)。

我能够在这里模拟行为:http://jsfiddle.net/thiagoprzy/0kkx9tsb/

我认为这个问题取决于我创建 JS 部分的方式,但是当我搜索替代解决方案时,几乎所有的解决方案都与这个非常相似。

P.S:我的屏幕分辨率是 1650x1050,所以如果您的分辨率更小,您可能需要更改 .container 高度值才能重现该问题。

最佳答案

你需要使用 $('.content').offset().top 而不是 $('.floating-filter').offset().top 或者你可以使用

if ($(window).scrollTop() > $('.floating-filter').outerHeight(true)) {

所以你可以使用

$(window).scroll(function () {
    if ($(window).scrollTop() > $('.content').offset().top) {
        $('.floating-filter').addClass('fixed');
    } else {
        $('.floating-filter').removeClass('fixed');
    }
});

Working Demo

关于javascript - 固定的滚动顶部菜单不允许到达屏幕底部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33783008/

相关文章:

javascript - 在 sails js Node 框架中创建 url

jquery - Bootstrap 中未显示 First nav pills 内容

javascript - 输入类型单选按钮已选中 else 语句在 jquery 中不起作用

javascript - 使用 JQuery 单击按钮选择多个列表项值

javascript - 在没有 JIT 的情况下构建 v8

javascript - reactjs onclick 里面的 map

php - 使用 JQuery .post() 发布数组

javascript - 在 <li> 标签中的文本之间添加可变空格

html - 如何在 HTML 中对齐多行选择?

javascript - Three.js:使全景中使用箭头键旋转变得平滑