Luk*_*kas 5 javascript jquery html5 mutation-events
我在拖动事件后向DOM中添加了一些元素。我需要检测此元素以及添加此元素的时间。我使用Mutation Observer,但是代码有问题:
var targetNodes = $('.mvly');
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
var myObserver = new MutationObserver (mutationHandler);
var obsConfig = { childList: true, characterData: true, attributes: true, subtree: true };
targetNodes.each(function(){
myObserver.observe(this, obsConfig);
} );
function mutationHandler (mutationRecords) {
mutationRecords.forEach ( function (mutation) {
if (typeof mutation.addedNodes == "object") {
console.log('test');
}
});
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮忙,谢谢。
这是一个简单的示例,说明如何MutationObserver在将元素添加到DOM时使用a 进行侦听。
为简便起见,我使用jQuery语法来构建节点并将其插入DOM。
var myElement = $("<div>hello world</div>")[0];
var observer = new MutationObserver(function(mutations) {
if (document.contains(myElement)) {
console.log("It's in the DOM!");
observer.disconnect();
}
});
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
$("body").append(myElement); // console.log: It's in the DOM!
Run Code Online (Sandbox Code Playgroud)
您无需遍历存储的每个MutationRecord,mutations因为您可以document.contains直接在上执行检查myElement。
| 归档时间: |
|
| 查看次数: |
3093 次 |
| 最近记录: |