jquery - 停止粘性侧边栏与页脚航点重叠

标签 jquery sticky jquery-waypoints

我有一个应用程序,它有一个带有多个链接的侧面导航栏。我正在使用 JQuery Waypoints 来确保当用户向下滚动页面时侧面导航是固定的。除了链接与页面底部的页脚重叠之外,它运行良好。

View 如下

.container
  .row
    .col-sm-3
      .side-navbar
        .nav
          %li
            %a{href: '#overview'}
              Overview
          %li
            %a{href: '#specification'}
          ...
    .col-sm-9
      #overview
        ... Content ...
      #specification
        ... Content ...

#footer
  ... content ....

然后我的 JS 中有以下内容:

$('.side-navbar').waypoint('sticky', {
  offset: 0
});

我知道 bootstrap 带有内置的 Affix,但如果可能的话,我热衷于继续使用路径点。任何有关如何停止重叠的建议将不胜感激:)

最佳答案

$('#footer').waypoint(function(direction) {
  $('.side-navbar')
    .toggleClass('sticky', direction === 'up')
    .toggleClass('at-bottom', direction === 'down')
}, {
  offset: function() {
    return $('.side-navbar').outerHeight()
  }
})

这表示当页脚的顶部距离窗口顶部[导航栏的高度](这意味着导航栏的底部接触页脚的顶部)时,删除粘性类并添加此 底部类。现在,您可以设置 at-bottom 类的样式,使其停留在需要停留的位置。

关于jquery - 停止粘性侧边栏与页脚航点重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27014363/

相关文章:

html - 如何将图像放置在两个 div/容器之上?

notifications - Toastr:如何防止鼠标悬停时粘性 toast 淡出?

javascript - 带逗号的 Jquery 计数器

javascript - 如何使用 JavaScript 动态构建路点数组?

jquery - Css 卡左右浮动无法正常工作

javascript - 关闭 Internet Explorer 后 Cookie 为空

javascript - 如果多个变量为空jquery

javascript - jQuery/正则表达式 : remove all p tags

CSS Sticky Bar - 无法放置在中间

jquery - 导航栏告诉您您所在的位置