2017-02-14 12 views
0

我有以下CSS代碼,當點擊.dashboard-actions類時會打開一個下拉菜單。點擊樹中的第二個div後,第二個div會變爲class =「dropdown open」(表示下拉菜單打開/可見),一旦用戶點擊打開的類將被刪除,下拉菜單消失(如預期的那樣)。防止基於頁面上存在的另一個類的默認點擊操作

我希望能夠使用某種形式的javascript(AngularJS 1.3或jQuery)能夠做一些邏輯來識別下拉菜單何時「打開」 - 如果是這樣,如果用戶點擊屏幕上的任何其他位置,實例href下面的href將通過刪除'open'類來打開'關閉'下拉菜單,而不是執行該默認操作,我怎樣才能最好地解決這個問題?

<div class="dashboard-actions ellipsis"> 
    <div class="dropdown" stop-event> 
     <div class="dropdown-toggle" type="button" id="dropdown1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> 
      <span class="material-icons">more_vert</span> 
     </div> 
     <ul class="dropdown-menu" aria-labelledby="dropdown1"> 
      <div> 
      <div ng-include src="'templates/menu.html'" ng-repeat="x in item.x"></div> 
      </div> 
     </ul> 
    </div> 
</div> 
<div class="interaction-body"> 
    <a href="https://somecdn.com/t51.2885-15/aaa.jpg" ng-href="https://somecdn.com/t51.2885-15/aaa.jpg" target="_blank" stop-event=""> 
    <img ng-src="https://somecdn.com/t51.2885-15/aaa.jpg" src="https://somecdn.com/t51.2885-15/aaa.jpg"></a> 
</div> 

回答

0

希望你正在尋找這個

//Some code 

$('.dropdown-menu').each({ 
    if($(this).hasClass('open')){ 
     // Do something 
     // $(this).removeClass('open'); 
    } 
}); 

//More code 
相關問題