是否可以判断DOM是否被修改,以及哪个部分?

时间:2010-03-24 17:40:16

标签: javascript jquery events dom

如果您知道它将被修改,是否有任何实用的方法可以告诉DOM的哪些部分被修改?

我正在编写一个将与javascript一起运行的插件,我没有写。在修改DOM之前将触发事件,并且在修改之后将触发一个事件。我的工作是决定改变了什么。这是可能的,如果是这样,最不可怕的方法是什么?

5 个答案:

答案 0 :(得分:6)

根据您需要的浏览器支持,您可以使用DOM mutation events

答案 1 :(得分:1)

如果您知道要修改DOM元素的哪个方面,则有可能将该属性的值存储在页面加载中每个元素的.data()节点中,然后在脚本运行后进行比较。

答案 2 :(得分:0)

您还可以对页面文本执行哈希(例如完整的源代码字符串),并将其(在更改时)与当前哈希值进行比较。

答案 3 :(得分:0)

使用jquery你可以触发:动画过滤器来搜索被动画的元素,我不知道你是否会在这些类型的事件之间有这么多的延迟,但是如果初始变换的主触发器在转换开始时被触发你可以尝试捕捉:动画元素并在结束动画之前捕捉初始状态,然后在结束捕捉状态和比较,它只是一个提示我没有任何演示或方式来重现你的工作环境但我希望这个指南可以给你一个想法。

答案 4 :(得分:0)

这不可能以任何实用的方式