如何等待直到元素存在?
我正在开发Chrome中的扩展程序,但我想知道:找出元素何时存在的最佳方法是什么?使用纯JavaScript,间隔检查直到元素存在,或者jQuery是否有一些简单的方法来执行此操作?
回答:
DOMNodeInserted
由于性能问题,不建议将其与其他DOM突变事件一起弃用-
推荐的方法是使用MutationObserver来监视DOM。不过,只有新的浏览器才支持此功能,因此您应该DOMNodeInserted
在MutationObserver
不可用时退回。
var observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) {
if (!mutation.addedNodes) return
for (var i = 0; i < mutation.addedNodes.length; i++) {
// do things to your newly added nodes here
var node = mutation.addedNodes[i]
}
})
})
observer.observe(document.body, {
childList: true
, subtree: true
, attributes: false
, characterData: false
})
// stop watching using:
observer.disconnect()
以上是 如何等待直到元素存在? 的全部内容, 来源链接: utcz.com/qa/398625.html