使用jQuery检查动态元素

时间:2016-10-18 14:48:27

标签: jquery mutable

使用jQuery,如何检测动态插入的元素?像这样:

$('div#cart').on('mutate', function() {
    // Do something.
});

它需要能够触发最初加载DOM时不存在的元素,甚至是使用Ajax插入的元素。

1 个答案:

答案 0 :(得分:1)

有一个名为DOMSubtreeModified的事件,它可以观察子树的变化。我不确定它在Internet Explorer或其他浏览器中的工作情况,但我确信它适用于最新版本的Chrome和Firefox。

这样的事情:

$(function () {
  $("#dom").on("DOMSubtreeModified", function () {
    console.log("DOM content changed.");
  });
  setTimeout(function () {
    $("#dom").text("Hello, World!");
  }, 1000);
  $("button").click(function () {
    $("#dom").text("Button Change");
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="dom">Hello</div>
<button>Change Text</button>