【问题标题】:Listening to events such as adding new elements in JavaScript [duplicate]监听事件,例如在 JavaScript 中添加新元素 [重复]
【发布时间】:2012-03-28 20:14:29
【问题描述】:

我需要创建一个事件侦听器,以便在将新元素添加到文档或其任何子元素时,调用我的事件处理程序。

任何想法如何使用?

【问题讨论】:

标签: javascript jquery html events event-handling


【解决方案1】:

不推荐使用突变事件,请改用Mutation Observer。您也可以使用arrive.js 库,它在内部使用 Mutation Observer 并提供了一个很好的简单 api 来监听元素的创建和删除。

$('#container').arrive('.mySelector', function(){
    var $newElem = $(this);
});

【讨论】:

  • 非常好的图书馆!解决了我当前的问题,并且肯定会在未来的项目中使用它。谢谢,Uzair!
【解决方案2】:

DOMNodeInserted 在 DOM Level 3 建议中已弃用。使用它们会减慢浏览器的速度(他们说)。根据您的需要,在插入元素的代码中触发自定义事件可能是有意义的。

【讨论】:

  • 其实我不是添加节点的,所以添加的地方处理不了。
【解决方案3】:
.bind('DOMNodeInserted DOMNodeRemoved')

这是检查元素被插入或删除的事件。

将此事件绑定在父元素上。

并在处理程序中调用您的函数

js 小提琴演示http://jsfiddle.net/PgAJT/

点击这里例如...http://help.dottoro.com/ljmcxjla.php

【讨论】:

猜你喜欢
  • 2018-02-04
  • 2012-11-28
  • 2022-12-19
  • 1970-01-01
  • 1970-01-01
  • 2012-12-04
  • 2014-05-31
  • 2019-11-13
  • 2020-07-06
相关资源
最近更新 更多