首頁 >web前端 >js教程 >如何防止 Twitter Bootstrap 下拉選單在內部點擊時關閉?

如何防止 Twitter Bootstrap 下拉選單在內部點擊時關閉?

Susan Sarandon
Susan Sarandon原創
2024-10-26 10:53:29694瀏覽

How to Prevent Twitter Bootstrap Dropdown Menus from Closing on Internal Clicks?

防止內部點擊時關閉下拉式選單

為了防止Twitter Bootstrap 下拉式選單在點擊內部元素時關閉,一種規避解決方案需要委託點擊事件處理。以下是詳細說明和建議的解決方案:

預設情況下,Twitter Bootstrap 下拉選單會在任何點擊後關閉,即使在選單本身內也是如此。為了克服這種行為,常見的方法是將點擊事件處理程序附加到下拉式選單並呼叫 event.stopPropagation() 以防止事件傳播。

但是,對於使用輪播控制等元件的設置,委託事件Twitter Bootstrap 的處理機制可能會幹擾預期的行為。在這種情況下,由於事件未到達委託的事件處理程序,請按一下這些控制項可能不會觸發預期的操作。

依賴下拉隱藏/隱藏事件並不是一個可行的替代方案,因為這些事件缺乏必要的信息,並且控制下拉內容。

建議的解決方案

有效的解決方案是在包含下拉式選單的容器元素上使用事件委託。以下是範例:

<code class="js">$(document).on('click', 'someyourContainer .dropdown-menu', function (e) {
  e.stopPropagation();
});</code>

在此範例中,按一下指定容器內的元素仍會將事件傳播到各自的委託處理程序。但是,專門針對下拉式選單的點擊將被攔截,並且 event.stopPropagation() 將阻止下拉式選單的關閉行為。

以上是如何防止 Twitter Bootstrap 下拉選單在內部點擊時關閉?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn