javascript - Bootstrap 在调整大小时动态添加

标签 javascript jquery css twitter-bootstrap-3

我有一个 100% 高度的 div,它下面有一个导航,下面还有更多内容。

当用户滚动通过导航时,它会停留在页面顶部,当用户返回到 100% 高度的 div 时,导航会被留在后面。

由于 div 是 100% 高度,因此导航的“data-offset-top”需要动态更改。

下面的代码适用于:

    $('#navigation').affix({
        offset: {
            top: $('#hero').height()
        }
    });

但是,当我调整页面大小时,偏移量的值不会重新添加到偏移量中。

以下代码检查页面高度是否发生变化,然后将新高度提供给 data-offset-top 但它没有`函数 affixChange() {

     $('#navigation').attr('data-offset-top', $('#hero').height());
    $('#navigation').affix({
        offset: {
            top: $('#hero').height()
        }
    }); 
 }

affixChange();
setInterval(function(){
 affixChange();
console.log($('#hero').height());
}, 1000)
  1. 为什么我的方法不起作用?
  2. 有更好的方法吗?

最佳答案

Bootstrap 使您可以传递一个函数来动态计算偏移量:

$('#navigation').affix({
  offset: {
    top: function() { return $('#hero').height(); }
  }
});

关于javascript - Bootstrap 在调整大小时动态添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22080346/

相关文章:

jquery - ajax 列表填充

javascript - 如何使用 API 和选定值检索 json 数据

jquery - 保持比例的相同高度的响应图像

jquery - 如何制作嵌套的lis级联文本

css - 用链接背景覆盖 li 右边框

javascript - 如何在 MVC3 中的 Html beginform 中发送 javascript var

javascript - 将国家/地区的 Javascript 数组映射到新数组中

javascript - Div 覆盖 Canvas ,鼠标悬停

javascript - 获取从 div 的高度 + 距顶部的距离滚动的像素数

javascript - Spread.NET 和 JavaScript