Получение ссылки на элемент, наблюдаемый с помощью MutationObserver
Я использую MutationObservers для наблюдения за изменениями, происходящими с несколькими узлами DOM (в основном добавление к их поддеревьям или удаление узлов в целом).
Наблюдатель работает нормально, потому что я использую subtree
вариант. Единственная проблема в том, что я не могу получить ссылку на родительский элемент, к которому прикреплен наблюдатель мутации.
const mutationObserver = new MutationObserver(mutationRecords => {
mutationRecords.forEach(mutationRecord => {
const addedNodesLength = mutationRecord.addedNodes.length;
for (let i = 0; i < addedNodesLength; i++) {
const node: Element = mutationRecord.addedNodes[i];
// I need to check the parent of node that is being observed
}
});
});
Я искал MDN, и я не могу найти какую-либо ссылку, если это возможно. Есть идеи, если это можно сделать?
1 ответ
mutationRecord.target
дает вам родительский элемент, по крайней мере, в соответствии с этим
Я протестировал его только на Firefox, но, похоже, он работает.
Это должно сделать это:
const observer = new MutationObserver(function(mutationsList, observer){
for(let mutation of mutationsList){
console.log(mutation.target);
}
});