【问题标题】:Is it legal to pass 'document' into MutationObserver.observe()?将 \'document\' 传递给 MutationObserver.observe() 是否合法?
【发布时间】:2022-08-20 23:58:45
【问题描述】:

MDN documentation for MutationObserver.observe() 声明传递给observe() 的第一个参数应该是“DOM 树中的一个 DOM 节点(可能是一个元素)以监视更改,或者作为要监视的节点子树的根.\" 我在高级 DOM 观察中看到的所有示例都建议在此处传递 document.body,但您是否可以实际传递 document 而不是在一个观察者中观察身体和头部(或就此而言) ,观察body 添加后,如果body 在您的JS 执行时还不存在)?

这似乎在 Chrome 中有效,但这是 Chrome 的非标准行为还是根据规范是否合法?

标签: javascript google-chrome standards mutation-observers


【解决方案1】:

好消息是,将document 传递给observe() 是完全可能的/合法的。我猜测为什么指南通常会通过 document.body 只是为了避免观察到不需要的 head 突变以及尚未附加到正文的潜在 DOM 元素。

【讨论】:

    猜你喜欢
    • 2019-11-26
    • 1970-01-01
    • 2018-01-07
    • 1970-01-01
    • 1970-01-01
    • 2020-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多