我是jQuery的新手,需要一些幫助才能在點擊時顯示和隱藏div。基本上我需要顯示一個div(包含一個小菜單),一旦用戶點擊一個鏈接,並且只要用戶點擊剛剛顯示的div內的鏈接。或者點擊外部div我需要再次隱藏div。我的HTML看起來像這樣(我會存在於頁面上的很多地方)。使用jQuery創建「點擊菜單」來顯示/隱藏div單擊
<a class="menu" href="#">Menu</a>
<div class="menu-content" style="display: none; position: absolute; border: 1px solid black; background-color: White;padding: 5px;">
<div><a href="#">Menu option 1</a></div>
<div><a href="#">Menu option 2</a></div>
</div>
我也有包裝了,我想我會設置隱藏DIV(趕上實際的菜單以外的點擊)再點擊一下事件的整個頁面一個div。
這是解決這個問題的正確方法,然後我如何刪除包裝div等的處理程序等等。我還應該考慮如何才能做到這一點(如果它是正確的方法)?
更新:基於公認的答案下面我加入這個解決它
//Need to return false here, otherwise the event will bubble up and trigger the hide on body
$('.menu').click(function() { $('.menu-content').hide();$(this).next().show();return false; });
$('body, .menu-content a').click(function() { $('.menu-content').hide();});
$('.menu-content a').click(function() { alert($(this)); });
當我在頁面的多個位置使用它時,這不起作用 – Riri 2009-03-03 07:14:32