我需要在除了div之外的html页面中触发click。但是div是在页面加载后动态创建的。我尝试过以下代码。
$('html').click(function(e) {
if(!$(e.target).hasClass('flyoutdiv') ){
}
});
它仅适用于未动态创建的元素。 " flyoutdiv"是在页面加载后动态创建的。我需要在整个页面中触发click,除了该元素。是否有任何解决方案?
答案 0 :(得分:2)
您需要将方法on
用于动态创建的元素。
$('html').on('click', function(e) {
if (!$(e.target).hasClass('flyoutdiv')) {
}
});
答案 1 :(得分:2)
您需要将点击事件附加到flyoutdiv
div,如下所示。
$(".flyoutdiv").on('click',function(e){e.stopPropagation();})
处理动态flyoutdiv
您可以使用以下代码。
$("body").on('click',".flyoutdiv",function(e){e.stopPropagation();})
答案 2 :(得分:1)
创建flyoutdiv后,将事件监听器绑定到他。创建div后添加$('.flyoutdiv').click(function(){//your code here});
比在每次点击时搜索目标要好得多。