2013-06-20 49 views
-4

我有一些JavaScript庫(例如Adobe Edge),它可以動態地將腳本節點插入到DOM中。 我使用MutationsObserver檢測變化,是否可以修改變異節點?是否可以修改動態添加的DOM節點?

+1

當然,爲什麼不 - 你試過嗎?只有你需要小心,不要陷入突變事件圈。 – Bergi

+0

這是一個恥辱。我沒想到這真的很簡單。 – VladArgentum

回答

0

是的,您可以像修改任何其他節點一樣動態修改添加到DOM的節點。

var target = document.querySelector('div'); 

new MutationObserver(function(mutations) { 
    mutations.forEach(function (mutation) { 
     Array.prototype.forEach.call(mutation.addedNodes, function (node) { 
      node.style.backgroundColor = 'red'; 
     }); 
    }); 
}).observe(document.querySelector('div'), {attributes: true, childList: true, characterData: true}); 

target.appendChild(document.createElement('span')); 

http://jsfiddle.net/ExplosionPIlls/rK6Hr/

0

呼喚你的MutationObserver takeRecords()應該給你MutationRecords的陣列,它們擁有財產target這是已被改變的節點。
基本檢查API

相關問題