Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以修改动态添加的DOM节点?_Javascript_Html_Dom_Mutation Observers - Fatal编程技术网

Javascript 是否可以修改动态添加的DOM节点?

Javascript 是否可以修改动态添加的DOM节点?,javascript,html,dom,mutation-observers,Javascript,Html,Dom,Mutation Observers,我有一些javascript库(例如AdobeEdge),可以动态地将脚本节点插入DOM。 我使用MutationsObserver检测到更改,是否可以修改更改后的节点?是的,您可以像修改任何其他节点一样动态修改添加到DOM中的节点 var target = document.querySelector('div'); new MutationObserver(function(mutations) { mutations.forEach(function (mutation) {

我有一些javascript库(例如AdobeEdge),可以动态地将脚本节点插入DOM。
我使用MutationsObserver检测到更改,是否可以修改更改后的节点?

是的,您可以像修改任何其他节点一样动态修改添加到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'));

在您的MutationObserver上调用
takeRecords()
应该会为您提供一个MutationRecords数组,它们具有属性
target
,即已更改的节点。

基本上检查一下。

当然,为什么不呢?您试过了吗?只是你需要小心,不要被困在突变事件圈里。这太可惜了。我没想到它真的这么简单。