我有一个按钮,用于创建一个带有“ mynewdiv”类的div。该div可以根据用户的喜好进行多次破坏和重新创建。
我想像这样插入div时添加一个事件侦听器:
$('body').on('DOMNodeInserted', 'div.mynewdiv', function () {
alert('hi');
});
但是,每次插入div时,警报框都会触发多次。
我正在使用无法更改的第三方插件-因此使用了事件监听器。 jQuery中是否有办法仅触发一次警报?
我尝试在事件监听器上使用.one
,但这实际上使它触发一次,而不是每次插入触发一次。
我可以创建一个计数器,但是我希望有一个更优雅的解决方案。
答案 0 :(得分:0)
基本修正:
var firedOnce = false;
$('body').on('DOMNodeInserted', 'div.mynewdiv', function () {
if (firedOnce == false) {
alert('hi');
firedOnce = true;
}
});