Раніше можна було підключити domManipметод jQuery, щоб вловити всі маніпуляції з jQuery dom і побачити, які елементи вставлені і т. Д., Але команда jQuery закрила це в jQuery 3.0+, оскільки, як правило, не є гарним рішенням підключати методи jQuery таким чином, і вони ' я зробив це так, що внутрішній domManipметод більше не доступний поза основним кодом jQuery.
Події мутацій також застаріли, оскільки раніше можна було зробити щось подібне
$(document).on('DOMNodeInserted', function(e) {
if ( $(e.target).hasClass('MyClass') ) {
}
});
цього слід уникати, і сьогодні замість цього слід використовувати спостерігачів мутацій, які працювали б так
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation)
if (mutation.addedNodes && mutation.addedNodes.length > 0) {
var hasClass = [].some.call(mutation.addedNodes, function(el) {
return el.classList.contains('MyClass')
});
if (hasClass) {
console.log('element ".MyClass" added');
}
}
});
});
var config = {
attributes: true,
childList: true,
characterData: true
};
observer.observe(document.body, config);