2012-11-08 240 views
2

我使用UL元素創建菜單,我使用jQueryUI來顯示此菜單。jQueryUI菜單隱藏

<ul style="display:none" id="action_menu" class="menu"> 
    <li><a href="javascript:alert(213112);">Edit Translation</a></li> 
    <li><a href="javascript:void(0);">Edit Comment</a></li> 
    <li><a href="javascript:void(0);">Edit Bind</a></li> 
    <li><a href="javascript:void(0);">Edit Reuse</a></li> 
    <li><a href="javascript:void(0);">Edit Sync Up</a></li> 
    <li><a href="javascript:void(0);">Export</a></li> 
    <li><a href="javascript:void(0);">Show History</a></li> 
    <li><a href="javascript:void(0);">Upload Screenshot</a></li> 
</ul> 

當按鈕被點擊時,$( 「#action_menu」)。菜單()可以顯示此菜單。 我知道如何顯示這個菜單,現在我不知道如何在鼠標點擊其他地方而不是點擊菜單時如何隱藏這個菜單。我發現有這麼多的例子,他們添加文檔點擊偵聽器,並檢查事件目標的父節點是否是這個菜單。喜歡這個鏈接Hide dropdown menu jQuery沒有人有更好的主意,我想知道爲什麼jQueryUI不會添加一個事件或選項的菜單部件。有人幫我,謝謝

回答

1

這是一個通用的解決方案我不知道你的插件

$(document).click(function (e) 
{ 
    var container = $(".menu"); 

    if (container.has(e.target).length === 0) 
    { 
     container.hide(); 
    } 
}); 
+0

我已經在其他地方見過這種解決方案,它看起來jQuery用戶界面並不需要文件右鍵菜單隱藏考慮,我必須像這樣解決這個問題。感謝U,Arun Killu – iamght

+0

我有同樣的問題。當我實施這個解決方案時,點擊打開菜單的按鈕不會再做任何事情。任何解決方案 – jmcollin92