我有一个常见的场景,当点击窗口时会关闭弹出窗口div。我使用的代码是
$(window).load(function (){
$('.popupstyle').live("click", function(e){
return false;
});
});
$(document).ready(function(){
$(window).click(function(){
$('.popupstyle').hide();
});
});
但问题是没有像LinkButton这样的控件的回发事件正在处理popup div。在popup div的click事件中返回false会产生问题。它会融合popuop div上的所有内容。不明白做什么修理一件事会扰乱另一件事。第一次点击时,直播活动也不起作用。任何建议
答案 0 :(得分:0)
答案 1 :(得分:0)
@sushanth是对的。它是因为事件冒泡,这是一个重要的核心js概念。虽然它可以让你在有2个听众($('.popupstyle').live("click"
,$(window).click
)的情况下绊倒你,但我们也可以利用冒泡来发挥优势,并使用一个监听器($(window).click
)执行相同的任务。
$(window).click(function(e){
if( ! $(e.target).hasClass('popupstyle') ){ $('.popupstyle').hide(); }
});