【发布时间】:2015-04-28 16:34:04
【问题描述】:
我在函数中有一个事件侦听器,每次调用该函数时,事件侦听器都会不断附加,并且事件侦听器中的代码会多次触发,具体取决于调用该函数的次数。我该如何解决这个问题?
function myFunction() {
$("#element").on("click", function() {
alert("test");
}
}
$("body").on("click", function() {
myFunction();
});
每次调用 myFunction() 时都会添加一个额外的单击事件侦听器,因此如果我单击主体 5 次,则单击“#element”。尽管只单击一次,但警报消息将运行 5 次。
【问题讨论】:
-
从那个函数中取出事件附件代码?
-
将代码添加到您的问题中。
-
“我该如何解决这个问题?” 不要在函数内部附加事件处理程序。
-
你想通过这段代码实现什么?你期望什么输出?这不是绑定事件的正确方法。
-
你为什么要这样做?
标签: javascript jquery