新しいDOM4 MutationObserverはこれを行うことができます。まだ広くサポートされているとは思いませんが、幸運なことに、Chrome でサポートされていWebKitMutationObserver
ます。
リンクされたチュートリアル ページから変更された、これはページのあらゆる場所でミューテーションをリッスンします。
var observer = new WebKitMutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
for (var i = 0; i < mutation.addedNodes.length; i++) {
if(mutation.addedNodes[i].id == "myDiv") {
// target node added, respond now...
}
}
});
});
observer.observe(document, { subtree: true });
observer.observe
より具体的な要素にリスニングを絞り込むことができればdocument
、パフォーマンスがいくらか向上します。