我正在使用引導程序下拉菜單。問題在於,它在第一次點擊時從不下降;我需要點擊2次才能切換。我猜這個點擊事件在某種程度上在傳播之前就被卡住了...避免必須雙擊切換引導程序下拉菜單
有什麼辦法解決這個問題嗎?
我正在使用引導程序下拉菜單。問題在於,它在第一次點擊時從不下降;我需要點擊2次才能切換。我猜這個點擊事件在某種程度上在傳播之前就被卡住了...避免必須雙擊切換引導程序下拉菜單
有什麼辦法解決這個問題嗎?
,也有需要兩次點擊。
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>
[...]
</li>
=>刪除data-toggle="dropdown"
將解決此問題。
在此之後單擊打開下拉菜單。
發生這種情況是因爲其下拉菜單的Twitter Bootstrap語法包含href
標記。您需要preventDefault
和stopPropagation
以防止發生這種情況。這樣的事情會做的伎倆:如果有人與正常的引導HTML下拉定義一起使用的角度與ui-bootstrap
模塊
$('.dropdown-toggle').click(function(e) {
e.preventDefault();
e.stopPropagation();
return false;
});
通過angular.ui.bootstrap的源代碼,他們有下拉菜單既處理本地bootstrap.js內尋找。
建議的解決方案: adjust angular.ui.bootstrap dropdownToggle指令僅限制爲「A」屬性。 所以通過解決此問題,您需要修改dropdownToggle將「CA」限制爲「A」,這將從angular.ui.bootstrap中隱藏Class looker,它已經由bootstrap.js處理,用於縮小角度的版本。 (「dropdownToggle」,function(){return {restrict:「CA」,require:「?^ dropdown」,link:function(a,b,c,d){
取代 「CA」 與 「A」。
乾杯
我發現在一些頁面上,我不得不雙擊,其他頁面是單擊。
刪除data-toggle="dropdown"
將雙擊變成單曲並打破單曲。
我比較了開發工具的HTML(因爲相同的HTML被送達)和我雙擊頁面發現與數據切換div是這樣的:
<div id="notifications" data-toggle="dropdown" class="dropdown-toggle"
aria-haspopup="true" aria-expanded="false">
但單一的點擊HTML看起來是這樣的:
<div id="notifications" data-toggle="dropdown" class="dropdown-toggle">
因此,文件準備,我用ATTR檢測和防止默認回答,這讓我雙擊打開成單一的點擊打開:
if (!($('#notifications').attr('aria-haspopup') == undefined &&
$('#notifications').attr('aria-expanded') == undefined))
{
$('.dropdown-toggle').click(function (e) { return false; });
}
我在https://stackoverflow.com/a/27278529/1673289中遇到了與jaybro相同的問題,但是他們的解決方案沒有幫助。
定爲這兩種情況的方式是添加:
data-disabled="true"
在其上具有data-toggle="dropdown"
屬性的元素。
提供了一個演示代碼來理解問題。你可以使用[http://jsfiddle.net/](http://jsfiddle.net/) – tejashsoni111