0

div 要素が空の場合にリスナーを持つ方法はありますか?

 $('#myDiv').emptyEvent(function(){

)};
4

1 に答える 1

2

DOMNodeInsertedDavidのコードは、、、、などのイベントハンドラー内で実行する必要がありDOMCharacterDataModifiedますDOMSubtreeModified。後者が最も推奨されます。例えば:

$('#myDiv').bind("DOMSubtreeModified", function(){
   if ( $('#myDiv').html() == "" ) {

   }
)};

編集:コメントに記載されているように、このような実装は非推奨です。davidが提案した代替実装は、次のとおりです。

// select the target node
var target = $("#myDiv")[0];

// create an observer instance
var observer = new MutationObserver(function(mutations) {
   mutations.forEach(function(mutation) {
      if($("#myDiv").html() == ""){
         // Do something.
      }
   });    
});

// 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(target, config);
于 2013-01-24T23:19:40.117 に答える