我确实遇到有关$(文件).click。
的问题我正在处理的页面顶部有一个用户栏。在右上角是一个包含当前登录用户的用户名的框。单击它会打开一个对话框,其中包含注销,我的个人资料等。有些链接基本上就像Facebook一样。
您可以通过再次单击该框或单击文档($(文档).click)来关闭此弹出窗口。
它适用于Chrome,但Firefox存在一些问题。 Firefox将盒子本身解释为“文档”,并在我点击该框后立即关闭。这是愚蠢的,因为我有链接,我无法点击它们,因为FF正在点击框关闭。
知道如何找到解决方法吗?
编辑:一些代码
$(document).ready(function(){
/*
***** user options popup *****
*/
$("#userputrigger").click(function() {
if ($("#userpopup").length > 0)
{
$("#userpopup").remove();
$(".arrop").attr("src","/img/arrowd.png");
$('#userputrigger').attr("title", "Show options");
$(".pass").toggleClass("act");
}
else
{
$(".ui").append('<div id="userpopup"><div class="options"><table cellpadding="0" cellspacing="0"><tr><td class="icon"><img src="img/user.png" width="16" height="16" alt="My profile" /></td><td><a href="#">My profile</a></td></tr><tr><td class="icon"><img src="img/settings.png" width="16" height="16" alt="Settings" /></td><td><a href="#">Settings</a></td></tr><tr><td class="icon"><img src="img/calendar.png" width="16" height="16" alt="Watchlist" /></td><td><a href="#">Watchlist</a></td></tr><tr><td class="icon"><img src="img/prizeicon.png" width="16" height="16" alt="My contests" /></td><td><a href="#">My contests</a></td></tr><tr><td class="icon"><img src="img/music.png" width="16" height="16" alt="My beats" /></td><td><a href="#">My beats</a></td></tr><tr><td class="icon"><img src="img/coins.png" width="16" height="16" alt="Balance" /></td><td><a href="#">Balance</a></td></tr><tr class="last"><td class="icon"><img src="img/logout.png" width="16" height="16" alt="Logout" /></td><td><form action="" method="post"><input type="submit" value="Logout" /><input type="hidden" name="logout" value="1" /></form></td></tr></table></div></div>');
$(".pass").toggleClass("act");
$(".arrop").attr("src","/img/arrowuact.png");
$('#userputrigger').attr("title", "Hide options");
}
return false;
});
$('#userpopup').click(function(e) {
e.stopPropagation();
});
$(document).click(function() {
if ($('#userpopup').is(':visible'))
{
$(".arrop").attr("src","/img/arrowd.png");
$("#userpopup").remove();
$(".pass").toggleClass("act");
$('#userputrigger').attr("title", "Show options");
}
});
});
它实际上适用于链接,但不适用于提交按钮“注销”。它刚刚在Firefox上关闭。
谢谢:)
答案 0 :(得分:2)
假设您单击“类”设置中的div。 以下内容将阻止文档点击传播。
$('.settings').click(function(e) {
e.stopPropagation();
...your stuff here...
});