Вы можете просмотреть наблюдателя мутации в редакторе tinymce и прослушать изменения. С помощью настройки параметров конфигурации TinyMCE и добавить обработчик инициализации наблюдать РОМ с самого начала:
setup : function(ed) {
ed.on('init', function(e){
// MutationObserver
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;
if (typeof MutationObserver != 'undefined')
{
// select the target node
var targets = ed.getDoc().querySelector('body');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
// do your magic here!!!
});
});
// configuration of the observer:
var config = { attributes: true, childList: true, characterData: true }
// pass in the target node, as well as the observer options
observer.observe(targets, config);
}
// fallback for older browsers
else
{
$(ed.getBody()).bind('DOMNodeChanged', function(e) {
// do your magic here !
});
}
});
}
Вам может понадобиться настроить наблюдатель для ваших нужд. Здесь представлена полезная страница о наблюдателях мутации: https://addyosmani.com/blog/mutation-observers/. Не используйте события мутации, потому что они устарели.
Вы можете использовать события мутации как резерв для браузеров, которые не поддерживают наблюдателей (см. Код выше).
спасибо. Как это происходит с кросс-браузером? –
Наблюдатели за мутациями - это функция HTML5 и будут работать со всеми новыми браузерами. См. Таблицу, в которой упоминается эта проблема: http://caniuse.com/#feat=mutationobserver – Thariama
это своего рода проблема. Мне нужно что-то, что будет работать хотя бы для IE9. –