我在Meteor项目中使用iron-router和twbs:bootstrap。我正在使用引导导航栏,但每当我在导航栏展开时导航到新路线时,当我到达新路线时,导航栏仍会展开。
我已经尝试过这里建议的解决方案:Bootstrap navbar stays expanded on route change但它对我不起作用。但是,我不确定我是否正确实施它。
在我的router.js文件中,我添加了以下内容:
var closeNavBar = function() {
var isExpanded = $('.navbar-toggle').attr('aria-expanded') === true;
if(isExpanded) {
$('.navbar-toggle').click();
}
}
Router.onAfterAction(closeNavBar, {except: 'signup'});
我错过了什么?
编辑:我尝试在引用的问题中添加评论,但我没有足够的声誉点来添加评论。
答案 0 :(得分:0)
我没有将代码添加到路由器,而是在模板处理程序文件中创建了一个事件监听器。
'click a.toggle-navbar': function(e) {
// is the menu visible
if($('#bs-example-navbar-collapse-1').is(':visible')) {
// click the toggle button
$('.navbar-toggle:visible').click();
}
}
请务必添加' toggle-navbar'在下拉菜单中为每个链接添加课程,并确保您更改了&bs-example-navbar-collapse-1'以适应导航栏崩溃div的ID。
请注意,我的解决方案是此处的修改版本:https://forums.meteor.com/t/bootstrap-dropdown-does-not-close-on-click-navigation/25098