如何等待元素的存在?我正在研究Chrome的一个扩展,我想知道:什么是了解元素何时出现的最佳方法?使用普通的javascript,间隔可以检查元素的存在,或者jQuery有一些简单的方法可以做到这一点?
3 回答
慕森王
TA贡献1777条经验 获得超3个赞
DOMNodeInserted
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()
红颜莎娜
TA贡献1842条经验 获得超12个赞
selector
该函数查找元素${selector} time
此函数每隔${time}毫秒检查该元素是否存在。 function waitForElementToDisplay(selector, time) { if(document.querySelector(selector)!=null) { alert("The element is displayed, you can put your code instead of this alert.") return; } else { setTimeout(function() { waitForElementToDisplay(selector, time); }, time); } }
selector="#div1"
time=5000
id="div1"
添加回答
举报
0/150
提交
取消