Вы можете использовать mutation.addedNodes
, чтобы увидеть, какие узлы были добавлены к элементу.Если вы просто хотите напечатать innerHTML всех узлов, вы можете сделать что-то вроде:
console.log( Array.from( mutation.addedNodes ).map( node => node.innerHTML ).join('\r\n') );
Это сначала преобразовало бы addedNodes
(который имеет тип NodeList) в массив, а затемКарта будет извлекать innerHTML для каждого узла.Затем вы можете объединить его и распечатать изменения.
Ниже код будет имитировать это поведение.
Для конфигурации вам не нужно проверять атрибуты или поддерево, childList будетделать то, что вы хотите сделать
const targetNode = document.getElementById('team_log_actual');
// Options for the observer (which mutations to observe)
const config = {
attributes: false,
childList: true,
subtree: false
};
// Callback function to execute when mutations are observed
const callback = function(mutationsList, observer) {
for (let mutation of mutationsList) {
if (mutation.type === 'childList') {
console.log( Array.from( mutation.addedNodes ).map( node => node.innerHTML ).join('\r\n') );
}
}
};
const observer = new MutationObserver(callback);
observer.observe(targetNode, config);
let counter = 0;
setInterval(function() {
var span = document.createElement('span');
span.innerHTML = 'I am element ' + (++counter);
targetNode.appendChild(span);
}, 1000);
<div id="team_log_actual"></div>