0

我有一个简单的导航栏,可以很好地折叠。当菜单折叠时,我使用下面的脚本在单击菜单项时“自动隐藏”菜单:

$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
    $('.navbar-collapse.in').removeClass('.in').css('height', '0');                     
});

这在 BS2 中完美运行,但现在菜单不再完全关闭,我必须在切换按钮上单击两次才能再次打开它。可能有点难以注意到差异,但请查看第二张图片的底部。

关闭前的菜单:

http://i.stack.imgur.com/tXeb8.png

关闭后的菜单:

http://i.stack.imgur.com/C1ZSu.png

的HTML:

<nav class="navbar navbar-default" role="navigation">
    <div class="navbar-header">
        <a class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
        </a>
    </div>

    <div class="collapse navbar-collapse">
        <ul id="myTab" class="nav navbar-nav">
            <li class="active"><a href="#tab1" data-toggle="tab">Tab1</a></li>
            <li><a href="#tab2" data-toggle="tab">Tab2</a></li>
            <li><a href="#tab3" data-toggle="tab">Tab3</a></li>
            <li><a href="#tab4" data-toggle="tab">Tab4</a></li>
            <li><a href="#tab5" data-toggle="tab">Tab5</a></li>
            <li><a href="#tab6" data-toggle="tab">Tab6</a></li>
            <li><a href="#tab7" data-toggle="tab">Tab7</a></li>
        </ul>
        <ul class="nav navbar-nav navbar-right">
            <li><a href="#tab8" data-toggle="tab">Tab8</a></li>
        </ul>
    </div>
</nav>
4

1 回答 1

0

尝试:

$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
       $('.navbar-collapse').collapse('toggle');                    
}); 
于 2013-10-04T09:02:57.617 回答