从 DOM 树中删除元素的回调?

发布于 2024-11-28 16:38:08 字数 310 浏览 0 评论 0原文

如果我有一个动态添加到页面的 DOM 元素,然后使用 jQuery 的 $("#id").remove() 删除,是否可以设置回调,因此当元素被删除后,我可以执行自定义操作。

我正在考虑对 jQuery 的 remove() 方法进行猴子修补,这样我就可以检查元素的 ID,如果它与我想要的匹配,则执行回调,但我不知道如何

还有更好的方法吗?我怎样才能使用猴子补丁来做到这一点?

(我正在编写一个greasemonkey脚本,并且我无法更改底层实现)

If I have a DOM element which is dynamically added to the page, and then removed using jQuery's $("#id").remove(), is it possible to setup a callback, so when the element is removed, I can execute a custom action.

I was thinking of monkey-patching jQuery's remove() method, so I can check the element's ID and if it matches the one I want, execute the callback, but I'm not sure how.

Are there any better ways to do it? And how can I do it using monkey-patching?

(I'm writing a greasemonkey script, and I can't change the underlying implementation)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你另情深 2024-12-05 16:38:08

您可以监听 DOMNodeRemoved 事件,然后按所需元素进行过滤。

$( "body" ).bind("DOMNodeRemoved", function(e){

  if(e.target.id == "id") {
     // do something
  }
});

像往常一样,有一个仅限 IE 的警告,因此请查看这篇文章:http://www.bennadel.com/blog/1623-Ask-Ben-Detecting-When-DOM-Elements-Have-Been-Removed-With-jQuery.htm

You can listen to DOMNodeRemoved event and then filter by your required element.

$( "body" ).bind("DOMNodeRemoved", function(e){

  if(e.target.id == "id") {
     // do something
  }
});

As usual, there is a IE only caveat, so check out this post: http://www.bennadel.com/blog/1623-Ask-Ben-Detecting-When-DOM-Elements-Have-Been-Removed-With-jQuery.htm

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文