【发布时间】:2013-11-05 12:46:34
【问题描述】:
我知道这可以通过某种方式处理,但到目前为止,这让我很难过。我正在编写一个脚本,并希望在 DOM 操作完成后触发一些特定的功能。我无法修改/添加/删除任何其他脚本(因为它可能会使用某些框架注入到页面中)。该页面使用 ajax 请求(未在 jQuery 中实现)来加载/修改内容。现在我希望在每个 DOM 修改完成后触发一个事件。我目前的方法是在每个 DOMSubtreeModified 事件中触发该函数。像这样的
$(document).bind('DOMSubtreeModified', doSomeStuff);
但是这种方法的缺点是,假设 ajax 在一次调用中加载 10 个元素,然后针对每个元素触发 doSomeStuff。这可以限制为仅在加载第 10 个元素后触发吗?类似于重置 $(document).ready() 事件?所以 $(document).ready() 每次 DOM 准备好时都会触发(在加载 ajax 内容之后)
【问题讨论】:
-
DOMSubtreeModified 已弃用 stackoverflow.com/questions/6659662/…,建议改用它 updates.html5rocks.com/2012/02/…
-
@Bernhard DOMSubtreeModified 仍然适用于 chrome,但突变观察者仍然如何告诉我文档是否再次准备好?
标签: javascript jquery html ajax dom