重置/更改bootstrap词缀的偏移量

时间:2014-05-22 03:13:36

标签: twitter-bootstrap twitter-bootstrap-3

如何将Affix(Twitter Bootstrap 3)的偏移量更改为其他值?

当我试图像这样两次调用方法时,第二个似乎被忽略并且没有任何效果:

$('#navbar-main').affix({ offset: 100});
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px

在第二次调用.affix之前重置affix回调也无济于事:

$('#navbar-main').affix({ offset: 100});
$(window).off('.affix');
$('#navbar-main').affix({ offset: 200}); // ---> the offset will not change to 200px

2 个答案:

答案 0 :(得分:39)

请记住,您可以随时使用数据方法访问构造函数...

所以,如果您只是尝试更新某个值......您可以这样做:

$('#navbar-main').data('bs.affix').options.offset = newOffset

希望有助于< 3脂肪

答案 1 :(得分:13)

这是怎么回事。关键是要在off上调用.affix,在附加元素上调用removeData。假设我要重置#navbar-main的词缀:

Bootstrap< 3(来自es128):

$(window).off('.affix')
$('#navbar-main').removeData('affix').removeClass('affix affix-top affix-bottom')
$('#navbar-main').affix({ offset: 400})

Bootstrap 3(来自Dysko):

$(window).off('.affix')
$('#navbar-main').removeData('bs.affix').removeClass('affix affix-top affix-bottom')
$('#navbar-main').affix({ offset: 400})