如何监视DOM元素上的CSS类更改。我无法以编程方式触发事件。 f.e我有多个ul标签,其中包含具有两个类的元素,一个是静态的,并且永不更改,第二类可能随时间变化,当它发生时,我想获取该元素。同样重要的是,新的ul标签可以在网站上附加。
<div>
<ul class="list">
<li class="static-class changableClass">a</li>
<li class="static-class changableClass">b</li>
</ul>
</div>
<div>
<div>
<ul class="list">
<li class="static-class changableClass">c</li>
<li class="static-class changableClass">d</li>
<li class="static-class changableClass">e</li>
</ul>
</div>
</div>
使用MutationObserver
var e = document.getElementsByClassName('static-class')
var observer = new MutationObserver(function (event) {
console.log(event)
})
observer.observe(e, {
attributes: true,
attributeFilter: ['class'],
childList: false,
characterData: false
})
observer.observe(e, {
attributes: true,
attributeFilter: ['class'],
childList: false,
characterData: false
})
引发错误“无法在'MutationObserver'上执行'观察':参数1的类型不是'节点'。”