【发布时间】:2016-03-14 03:25:46
【问题描述】:
我有一些“复杂”的点击事件,我不知道如何解决它。
我在页面后面添加的一些元素上有一个点击事件,所以我使用了.on。
我想要实现的是,当您单击 .neuron 时,您应该无法单击另一个 .neuron,或者您之前单击的那个也不能。这就是我添加.off 函数的原因。
问题是,在打开/关闭神经元 2-3 次后,点击事件会触发 2 次,然后是 4 次,然后是 8 次,以此类推。我不明白为什么。
这里是 jQuery 相关的部分:
$("#nn_container").on("click", ".neuron", zoom_neuron);
function zoom_neuron() {
$("#nn_container").off("click", ".neuron", zoom_neuron);
console.log("off");
/* do some stuff */
$("#close_neuron").click(function() {
/* do some stuff */
$("#nn_container").on("click", ".neuron", zoom_neuron);
console.log("on");
});
}
它有什么问题?为什么它在事件调用中持续增加?
【问题讨论】:
-
你没有解除
#close_neuron的点击绑定。
标签: javascript jquery html