用Angularjs隐藏下拉菜单并显示子菜单

用Angularjs隐藏下拉菜单并显示子菜单,angularjs,twitter-bootstrap,drop-down-menu,Angularjs,Twitter Bootstrap,Drop Down Menu,我必须在单击父下拉菜单中的链接时显示子菜单,当显示时,父菜单应隐藏,子菜单应显示 我所尝试的: <ul class="nav navbar-nav navbar-right " > <li class="dropdown"> <a class="dropdown-toggle" data-toggle="dropdown" title=""></a> <ul id="dr

我必须在单击父下拉菜单中的链接时显示子菜单,当显示时,父菜单应隐藏,子菜单应显示

我所尝试的:

 <ul class="nav navbar-nav navbar-right " >
        <li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" title=""></a>
               <ul id="dropdown-menu" class="dropdown-menu" role="menu" ng-hide="showSubMenu">
                  <li> <a href="#"  ng-click="showSubMenu = ! showSubMenu">Hide me and show submenu</a></li>
               </ul>
               <ul  class="dropdown-menu" role="menu"  ng-hide="!showSubMenu">
                  <li><a href="#" ng-click="showSubMenu =!showSubMenu">Hide me and t show back parent</a></li> 
              </ul>
         </li>
   </ul>                                       
更改可见性正在工作,但未触发drop事件,我必须再次单击以切换下拉列表,我需要在更改可见性状态后自动执行此操作

您必须使用
Angular
sintax自定义下拉列表

var-app=angular.module(“app”,[]);
app.directive('offClick',['$rootScope','$parse',function($rootScope,$parse){
var-id=0;
var侦听器={};
//添加变量以检测触摸用户的移动。。
var-touchMove=false;
//添加事件侦听器以处理各种事件。Destop将忽略触摸事件
document.addEventListener(“touchmove”,offClickEventHandler,true);
document.addEventListener(“touchend”,offClickEventHandler,true);
document.addEventListener('click',offClickEventHandler,true);
函数targetFilter(目标,elms){
如果(!target | |!elms)返回false;
var elmsLen=elms.length;
对于(变量i=0;i

下拉按钮

如何在单击外部时关闭下拉列表,在您的示例中,它不起作用您可以使用
关闭单击
指令它已经存在于githup上