从javascript调用Bootstrap ScrollSpy不起作用
问题描述:
我正在构建一个基于bootstrap的网站,此刻我遇到了问题。 如果我从data-attributes
拨打:从javascript调用Bootstrap ScrollSpy不起作用
<body data-target=".navbar" data-spy="scroll" data-offset="200">
Scrollspy确实工作。
但如果我使用JavaScript
$('.navbar').scrollspy({offset:200});
这不起作用!
我也已经尝试把属性上飞:
$("body").data("target", ".navbar");
$("body").data("spy", "scroll");
$("body").data("offset", "200");
没有结果为止。
我认为JavaScript调用中缺少一些东西。如果$('。navbar')是目标,我可以在哪里设置间谍对象(body)?
答
有这样做的不同的方法,看看这可以帮助你:http://jsfiddle.net/panchroma/Tgghc/
使用数据属性的重要位被包括在div你想刺探数据的间谍细节:
<div id="nav-wrapper" data-spy="affix" data-offset-top="200">
.....
然后在你的CSS定义要发生在这个div当它贴上,比如什么:
#nav-wrapper.affix {
top: 0;
width: 100%
}
由于贴DIV将会被去掉不rmal流,有时你需要玩一点,所以词缀行为不会导致主要内容的跳跃。
祝你好运!
答
当通过JavaScript调用scrollspy时,指定body标签(或带有滚动条的另一个元素)并作为选项传入目标导航栏。
$('body').scrollspy({ target: '.navbar' });
我不知道为什么引导文件说,$( '#导航栏')。scrollspy()。这是非常具有误导性的。
你打电话给'.scrollspy'文件准备好了吗? – mkoryak 2013-02-21 18:02:02