如何检测页面上是否加载了 dom 元素
How to detect whether an dom element has loaded on the page
我有一个单页应用程序,其中 div 和 class "abc" 正在动态加载。我想 运行 仅在该特定元素及其所有子元素都已加载到 DOM 之后才执行脚本。我不想使用一次又一次调用该函数的计时器。我该怎么做。这可能与变异观察者有关,但我不明白如何使用它。
$(document).on('DOMNodeInserted', '.abc', function() {
});
这将等到 DOM 元素准备就绪,然后 运行 您的代码。
变异观察者的例子
var target = document.querySelector('.class');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// 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);
因此对于目标元素的每个突变
此代码 console.log(mutation.type);
将被执行
我有一个单页应用程序,其中 div 和 class "abc" 正在动态加载。我想 运行 仅在该特定元素及其所有子元素都已加载到 DOM 之后才执行脚本。我不想使用一次又一次调用该函数的计时器。我该怎么做。这可能与变异观察者有关,但我不明白如何使用它。
$(document).on('DOMNodeInserted', '.abc', function() {
});
这将等到 DOM 元素准备就绪,然后 运行 您的代码。
变异观察者的例子
var target = document.querySelector('.class');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// 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);
因此对于目标元素的每个突变
此代码 console.log(mutation.type);
将被执行