我是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