Não há solução embutida para esse problema, este é um problema com seu padrão de design e codificação.
Você pode usar o padrão de editor / assinante. Para isso, você pode usar eventos personalizados do jQuery ou seu próprio mecanismo de eventos.
Primeiro,
function changeHtml(selector, html) {
var elem = $(selector);
jQuery.event.trigger('htmlchanging', { elements: elem, content: { current: elem.html(), pending: html} });
elem.html(html);
jQuery.event.trigger('htmlchanged', { elements: elem, content: html });
}
Agora você pode assinar os eventos divhtmlchanging / divhtmlchanged da seguinte maneira,
$(document).bind('htmlchanging', function (e, data) {
//your before changing html, logic goes here
});
$(document).bind('htmlchanged', function (e, data) {
//your after changed html, logic goes here
});
Agora, você deve alterar as alterações no seu conteúdo div através desta changeHtml()
função. Portanto, você pode monitorar ou fazer as alterações necessárias adequadamente, porque o argumento de ligação de dados de retorno de chamada que contém as informações.
Você precisa alterar o html da sua div assim;
changeHtml('#mydiv', '<p>test content</p>');
E também, você pode usar isso para qualquer elemento html, exceto o elemento de entrada. De qualquer forma, você pode modificar isso para usar com qualquer elemento (s).