ПО
Петр Осипов

Как вы наблюдаете за удаляемыми узлами DOM?

У меня есть плагин, он реагирует когда происходит добавление или удаление узла DOM:

$.fn.domNodeChanged = function(cb, e)
{
var e = e || {subtree:true, childList:true, characterData:true};
$(this).each(function()
{
var callback = function(changes)
{
cb.call(node, changes, this);
}
var node = this;
(new MutationObserver(callback)).observe(node, e);
});
};

$('selector').domNodeChanged(function()
{
//Что-то выполняем
});

Но что, если мне необходимо только удаление? Можно ли, оформить это как событие?

ST
Semina Tatyana

Т. е. проблема в том, что не понятно: Удалилось или добавилось?

После каждого запуска события, можно добавлять на элемент атрибут,

data-child-length="17"

При запуске следующего события...

let childLength = elem.childNodes.length;
if( childLength < Number(elem.dataset.childLength) ) {
// Значит удалилось.
}
elem.dataset.childLength = childLength;

Note: childNodes - это в том числе и текст, и пробелы/переносы строк в коде между HTML-элементами. Если нужны только HTML-элементы, тогда elem.children

P.s. Я-то не лазил, не знаю - не исключено, что у него и так уже есть такое встроенное свойство)

Похожие вопросы
Delphi IdHTTP, HTMLDocument и DOM.
транспортные узлы. Транспортные узлы, их особенности и классификация
может ли из за узла в щитовидке болеть горло? ну и лечатся ли узлы
Помогите написать программу, которая удаляет узлы в кратных позициях связного списка (с++)
Как лучше и качественнее работать с DOM в JS
какие узлы являются узлами интернет?
Dom-ru
Шрифт Dom Diagonal Bold BT.
JavaScript + DOM. Маленький код и то не работает
Привет, почему .removeClass не удаляет класс, а .addClass добавляет класс. Что я делаю не так ?