我观察Div元素的变化,这个变量充满了带有ajax调用的子div。我的目标是在观察到的Record对象中进行一些检查并过滤其中的一些。如何从观察到的突变列表中删除/删除/过滤这些突变记录?并在网页中过滤它们。
我试图从突变列表中删除突变记录,但它没有起作用。 谢谢你的帮助。
&
答案 0 :(得分:0)
我认为您的变异对象是一个复杂的对象,而不是普通的数据类型,因此您的" indexOf"检查你的.remove方法不会删除任何东西。
你应该创建一个额外的方法,比如" checkForElement"或者其他的东西。在该方法中,您可以决定变异对象的相等性。
在Stack Overflow上已有解决方案,例如: indexOf method in an object array?
答案 1 :(得分:0)
您无法中止突变,因为执行回调时,突变已经发生。
你可以做的是" rollback"使用MutationRecord中提供的信息进行变异,尤其是您似乎关心的addedNodes
。你可以简单地迭代这些,并为每个节点从它的父节点中删除它:
if(node.parentNode) {
node.parentNode.removeChild(node);
}