我已經菜單充滿了$ HTTP方法角NG-重複切換菜單元素
<ul class="nav">
<li ng-repeat="(itemIndex, item) in menuItems.menu_items">
<a ng-click="showSubmenu(itemIndex)" ng-href="{{item.link}}">{{item.title}}</a>
<ul class="sub-nav" ng-show="isShowing(itemIndex)">
<li ng-repeat="subItem in item.submenu">
<a ng-href="{{subItem.link}}">{{subItem.title}}</a>
<span>{{subItem.desc}}</span>
</li>
</ul>
</li>
</ul>
並在控制器
$scope.activeMenuIndex;
$scope.showSubmenu = function(item) {
$scope.activeParentIndex = item;
}
$scope.isShowing = function(index) {
return $scope.activeParentIndex === index;
};
基本上它的工作原理 - 點擊菜單元素隱藏其他元素和擴大點擊一個。問題是當我點擊打開的菜單元素 - 它不會隱藏。
也許你知道解決的一個更好的主意,比我(不完全)的方式?
問候!
我用NG-點擊指令上顯示菜單。我不知道如何隱藏菜單第二次點擊。 - 那就是問題所在。 – cachaito 2014-10-16 21:24:55
如果菜單已經打開然後關閉,您可以檢查showMenu。 if($ scope.activeParentIndex === item){$ scope.activeParentIndex = null} else {$ scope.activeParentIndex = item; } – floribon 2014-10-16 21:26:11
@fliborn:這是一個有趣的方法。我會提供你的建議。無論如何,做這件事是在AngularJS中切換菜單項的好方法嗎? – cachaito 2014-10-16 21:28:44