2017-04-24 85 views
0

我正在從事一項工作,我的僱主希望使用Bootstrap 3的響應式網站,但他們不希望在其現有的桌面網站上進行任何可視化更改(顯然不是理想的,但超出了我的控制範圍)。從外部按鈕打開引導程序下拉菜單

目前我正在處理導航部分。我遇到的問題是,我有一個登錄表單(這裏是一個佔位符),位於導航菜單下拉菜單內。在移動時在下拉菜單中顯示reamins,但在固定頂部標題欄標題「Login」中添加了一個單獨的圖標按鈕,該標題位於漢堡菜單附近,即使主導航已關閉,也可以看到。下面是我的codepen:

http://codepen.io/v_for_vinsanity/pen/YVGZdb

我正在尋找一種方式來獲得登錄下拉菜單打開,當我點擊登錄圖標按鈕。下面是登錄下拉菜單代碼:

<li class="dropdown login-dropdown"> 
       <a href="#" class="dropdown-toggle login-btn" data-toggle="dropdown" aria-expanded="false">Login <span class="caret"></span></a> 
       <ul role="menu" class="dropdown-menu dropdown-menu-right"> 
       <li> 
      <img src="http://placehold.it/350x300" alt="login-placeholder"> 
       </li> 
       </ul> 
      </li> 

使用jQuery,我已經能夠得到的焦點轉移到登錄下拉菜單(你將在codepen看到),但我還沒有能將「open」類添加到li class =「dropdown login-dropdown」中,並/或將login錨標籤上的aria-expanded屬性更改爲「true」。香港專業教育學院嘗試了許多不同的方法,但下面你會發現什麼,我目前有:

$(function(){ 
    $('.login-icon-btn').click(function(){ 
     $('.nav li.login-dropdown a').trigger('click'); 
     $('.nav li.login-dropdown').addClass('open'); 
     $('.login-btn').attr("aria-expanded","true"); 
    }); 
}); 

任何幫助,這是非常感謝!

回答

0

,這將是一種選擇

$(function(){ 
     $('.login-icon-btn').click(function(){ 
      $('.navbar-toggle').click(); 
      $('.login-btn').click(); 
      return false; 
     }); 
    }); 
+0

感謝@Richi Zee的 - 您的解決方案的偉大工程的唯一的問題是我需要使用if/else語句,以確定是否滑出導航已經被打開,這將決定運行或不運行$('。navbar-toggle')。click();.但你已經得到了巨大的幫助,非常感謝! –