Кроме использования таймера для подсчета числа элементов со временем и поиска изменений я не могу думать о лучшем способе моделировать это событие.
Есть ли своего рода собственная версия IE DOMNodeInserted?Спасибо.
Нет, нет. Ближайший - это событие ProcessChange
, которое стреляет в ответ на изменение атрибута или свойства CSS элемента. Он стреляет в ответ на изменение свойства InnerHTML
свойства элемента непосредственно, но не когда содержимое элементов изменено некоторыми другими средствами (например, с использованием методов DOM, таких как AppendChild ()
или изменяя innerhtml
дочернего элемента).
Как указано в комментариях, есть обходной путь. Он основан на сложном взломе, и я бы порекомендовал использовать наблюдатели мутации вместо этого, где это возможно. См. Ответ @ Naugtur для деталей . @ Ответ Naugtur был удален, но решение можно найти в https://github.com/naugtur/insertionquery
Вы можете переопределить все методы манипулирования DOM - appendChild, insertBefore, replaceChild, insertAdjacentHTML и т. Д. - и контролировать innerHTML с помощью onpropertychange.
Возможно, вам удастся найти решение, удовлетворяющее вашим требованиям.
Кстати, похоже, что в будущем DOMNodeInserted и т. Д. Не поддерживаются браузерами. См. http://www.w3.org/TR/DOM-Level-3-Events/# events-mutationevents