如何在angularJS应用中创建可折叠的导航菜单?

时间:2018-09-25 02:45:22

标签: angularjs

我是AngularJS的新手,并且使用Home / Customer / Account / Other等菜单 引导导航栏组件,例如

 <div class="navbar navbar-default navbar-inner navbar-inverse">  

            <div class="navbar-header">

                <button type="button"

                        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>
                </button>
            </div>

    <div class="navbar-collapse collapse">

                <ul class="nav navbar-nav">
                    <li data-ng-class="{'active':highlight('/home')}"
                        style="margin-left:1px;">
                        <a href="home">Home</a>
                    </li>
            <li data-ng-class="{'active':highlight('/customer')}" style="margin-left:1px;">
                        <a href="customer">Customer</a>
                    </li>
               </ul>
    </div>
</div>

一旦我缩小窗口,就会看到三明治按钮。现在,如果我单击说“客户”菜单,我想 折叠菜单。

我该怎么做?请帮帮我。

1 个答案:

答案 0 :(得分:2)

$(document).ready(function () {
    $("nav").find("li").on("click", "a", function () {
        $('.navbar-collapse.in').collapse('hide');
    });
});
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<nav class="navbar navbar-default" role="navigation">
    <div class="container-fluid">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">Toggle navigation</span>
 <span class="icon-bar"></span>
 <span class="icon-bar"></span>
 <span class="icon-bar"></span>

            </button> <a class="navbar-brand">Brand</a>

        </div>
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
                <li class="active"><a data-toggle="collapse" data-target=".in" href="#sectionA">Page1</a>

                </li>
                <li><a data-toggle="collapse" data-target=".in" href="#sectionB">Page2 (with data-toggle attribute)</a>

                </li>
                <li><a href="#sectionC">Page3 (without data attributes, just jQuery)</a>

                </li>
            </ul>
        </div>
    </div>
</nav>

我假设您要在单击菜单中的任何项时关闭可折叠的导航菜单。如果这是您要寻找的东西,请在使用引导程序时尝试使用它

<div class="navbar-nav" data-target=".navbar-collapse" data-toggle="collapse">
<a class="nav-item nav-link" href="#">Menu Item </a>
</div>

Bootstrap4

<li>
 <a href="#" data-toggle="collapse" data-target=".navbar- 
 collapse.show">Products</a>
</li>

使用jQuery进行bootstrap4

$(document).on('click','.navbar-collapse.show',function(e) {
 $(this).collapse('hide');
});