MutationObserver или Наблюдатель
В продолжение этой темы http://javascript.ru/forum/misc/3037...nobserver.html
Нужно отслеживать изменения dom в определенном контейнере. Наверное, лучше подойдет MutationObserver, но по нему мало информации. В частности не нашел, в каких браузерах он поддерживается на данный момент. Подскажите, если знаете. Ну и на русском никакого руководства для быстрого старта тоже нет. Второй вариант - паттерн Наблюдатель. Где можно взять наиболее вменяемые его реализации? В jQuery не встроили еще? |
DOMSubtreeModified ие9+ и всеми остальными
|
А как он там называется? В хроме и сафари, например, MutationObserver не работает, там вместо него WebKitMutationObserver
|
|
Врубился. Не то искал просто
|
Цитата:
Ка я уже писал: Так как Mutations Events (DOMSubtreeModified - одно из таких событий) являются очень требовательными к вычеслительным рессурсам пользователя, то разработчики браузеров рекомендуют использовать MutationObserver. И это не просто рекомендации, например расширение для браузера Firefox не проходило модерацию из-за того что я использовал DOMSubtreeModified. И MutationObserver были специально разработаны для замены Mutations Events. Про MutationObserver можно прочитать здесь и здесь правда на англ. Еще как вариант можно написать свой наблюдатель за изменением DOM дерева. // Следим за всеми елементами и их атрибутами в div с id monitored var originalDOM = document.getElementById('monitored').innerHTML, actualDOM; setInterval(function () { actualDOM = document.getElementById('monitored').innerHTML; if (originalDOM !== actualDOM) { originalDOM = actualDOM; // ... // Здесь нужный код // ... } }, 1000); // проверяем изменения каждую секунду |
> Mutations Events (DOMSubtreeModified - одно из таких событий) являются очень требовательными к вычеслительным рессурсам
бенчмарки в студию > разработчики браузеров рекомендуют использовать MutationObserver сколько браузеров его поддерживают? > Еще как вариант можно написать свой наблюдатель за изменением DOM дерева. угу, сериализация всего поддерева - это куда быстрее чем всплытие событий > проверяем изменения каждую секунду и получится тупящий интерфейс |
кроме как нагадить в карму ничего умнее не придумал?
|
Цитата:
А ну да ты настолько крут что производители браузеров тебе не указ. А карма на то она и есть чтоб оценивать посты, не нравится как здесь (на форуме) устроено все - так не пользуйся. |
> я говорю что производители браузеров отказались от Mutations Events
каких конкретно браузеров? начиная с каких версий их поддержки больше не будет? > А ты мне о бенчмарках то есть подтвердить свои слова цифрами ты не можешь? |
Часовой пояс GMT +3, время: 11:16. |