jquery - Mutation Observers与DOMSubtreeModified

时间:2018-01-05 15:19:36

标签: jquery deprecated mutation-observers

我使用的是jquery.min.js的3.2.1版本

我的代码中有这个:

$('#damage1').bind("DOMSubtreeModified",function(){displayIcons();});

但是这行在我的Firefox控制台中导致错误: "不推荐使用Mutation Events。请改用MutationObserver。"

足够公平。

在文档中,我将其视为新语法:

new MutationObserver(function callback);

但是,实际上,基于我的基本编码级别,我不知道该怎么做才能有效地替换我弃用的行。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:-1)

不推荐使用DOMSubtreeModified。

// Select the node to observe for changes
var targetNode = document.getElementById('#damage1');  
// targetNode = document.querySelector('#myTable tbody');


// set which changes to observe 
var config = { attributes: true, childList: true, subtree: true };


//create callback function to execute when changes are observed
function diplayIcon(){
    //do something
    alert("mutation observed");}

//Create an observer instance linked to the callback function
var observer = new MutationObserver(displayIcon);

// Start observing the target node for configured mutations(changes)
observer.observe(targetNode, config);

// Later, you can stop observing
//observer.disconnect();