点击html元素除了动态创建的元素?
问题描述:
我需要触发点击的HTML页面,除了一个div.but div是在页面加载后动态创建的。我尝试了下面的代码。点击html元素除了动态创建的元素?
$('html').click(function(e) {
if(!$(e.target).hasClass('flyoutdiv')){
}
});
它仅适用于未动态创建的元素。 “flyoutdiv”是在页面加载后动态创建的。我需要在整个页面中触发点击,除了那个元素。有没有解决方案?
答
您需要附加点击事件flyoutdiv
DIV像以下。
$(".flyoutdiv").on('click',function(e){e.stopPropagation();})
要处理动态flyoutdiv
您可以使用如下代码。
$("body").on('click',".flyoutdiv",function(e){e.stopPropagation();})
答
对于动态创建的元素,您需要使用方法on
。
$('html').on('click', function(e) {
if (!$(e.target).hasClass('flyoutdiv')) {
}
});
+0
它正在工作,谢谢 –
答
创建flyoutdiv后,事件监听器绑定到他。创建div后添加$('.flyoutdiv').click(function(){//your code here});
这比在每次点击中搜索目标好得多。
创建flyoutdiv后,将事件侦听器绑定到他。创建div后添加[code] $('。flyoutdiv')。click(function(){// your code here}); – Djuro