[英]Angular UI & Bootstrap: Collapse Mobile Navbar on Link Click
我通过使用Angular-UI的ui.bootstrap有一个功能正常的引导导航栏。 对于移动导航栏,我希望单击链接时导航栏折叠。 切换按钮功能正常,但无法在导航链接上使用ng-click =“ isCollapsed =!isCollapsed”。
<div class="navbar navbar-default navbar-fixed-top" ng-controller="NavbarCtrl">
<div class="container">
<div class="navbar-header">
<button class="navbar-toggle" type="button" ng-click="isCollapsed = !isCollapsed">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="/" class="navbar-brand">App</a>
</div>
<div collapse="isCollapsed" class="navbar-collapse collapse" id="navbar-main">
<ul class="nav navbar-nav">
<li ng-repeat="item in menu" ng-class="{active: isActive(item.link)}">
<a ng-href="{{item.link}}" ng-click="isCollapsed = !isCollapsed">{{item.title}}</a>
</li>
</ul>
</div>
</div>
</div>
在我的控制器中,适用的代码为:
$scope.isCollapsed = true;
我遇到过同样的问题。 不知道这是否是最好的解决方案,但我只是在主控制器中添加了它:
$rootScope.$on('$stateChangeStart', function(event, toState){
$scope.navbarCollapse = true;
});
它不会完全按照您的要求进行操作,因为它不会触发点击事件崩溃。 但这确实会触发每个状态更改的崩溃,为此目的是相同的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.