gpt4 book ai didi

javascript - 如果在调用 .remove 时自动调用 .off?

转载 作者:行者123 更新时间:2023-11-30 08:50:24 26 4
gpt4 key购买 nike

jQuery:

var a = $("<a href='#'>Click me</a>")
var d = $("div:first");
a.appendTo(d);
a.on("click",function(){
if(prompt('enter password') === 'password'){
$(d).remove();
}
});

fiddle :http://jsfiddle.net/bujRr/


问题:虽然 <a>不再存在, click仍然受其约束。

  1. 是否删除了事件绑定(bind)?当<div>.remove()编?
  2. 如果不是,这会不会在理论上运行数百次后导致性能问题?
  3. 我应该调用 .off() 吗?之前 .remove()


注意:不,我并没有真正在 JS 中存储任何密码。为了拥有 SSCCE,我删除了 ajax 调用以及其他代码。 .

最佳答案

好吧,根据文档,事件也被删除了:http://api.jquery.com/remove/

Similar to .empty(), the .remove() method takes elements out of the DOM. Use .remove() when you want to remove the element itself, as well as everything inside it. In addition to the elements themselves, all bound events and jQuery data associated with the elements are removed. To remove the elements without removing data and events, use .detach() instead.

关于javascript - 如果在调用 .remove 时自动调用 .off?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18403107/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com