【发布时间】:2011-08-28 12:35:32
【问题描述】:
对于我正在实施的交互设计技巧,我对 jquery 有一点问题。我有一个链接和一个隐藏的下拉菜单,可以在用户单击链接时显示。如果用户单击链接或菜单外,我希望隐藏下拉菜单。这两个元素都位于使用 AJAX 动态加载的页面部分(因此使用了 live() 函数)。如果我在非 AJAX 重新加载的容器上执行此操作,一切正常,但一旦它是动态加载的内容(下拉菜单显示,但如果我单击外部不会隐藏),则一切正常。我的代码如下:
$("#clickToOpen").live('click',function(event) {
$("#dropdownMenu").show();
event.stopPropagation();
});
$("#dropdownMenu").live('click',function(event){
event.stopPropagation();
});
$(document).live('click',function() {
$("#dropdownMenu").hide();
});
(我也尝试直接对(文档)上的最后一个事件使用 click() 函数,因为该元素没有重新加载,但不起作用)
有什么想法吗?
【问题讨论】: