javascript - 通过 JavaScript 拦截对 DOM 的访问

标签 javascript dom

我想知道如何通过 JavaScript 拦截 DOM 访问。是否有任何可用的工具或白皮书? (否则我需要写一个!)

拦截背后的想法与网络浏览器的安全模块有关。

谢谢。

最佳答案

你能做的最好的就是使用 DOM mutation events .有各种事件,例如 DOMNodeInsertedDOMNodeRemovedDOMAttrModified 等(请参阅上面链接的 DOM 事件规范)。有一个名为 DOMSubtreeModified 的通用事件,它会在任何单个 DOM 更改后触发;此事件冒泡,因此您可以在文档上设置一个监听器,以通知文档 DOM 的所有更改。

document.addEventListener("DOMSubtreeModified", function(evt) {
    console.log("DOM mutation", evt);
}, false);

大多数最新的浏览器都支持这些事件,但 IE(最高版本 8)和 Opera 除外,它们支持一些 eventbts,但特别是不支持 DOMSubtreeModified

关于javascript - 通过 JavaScript 拦截对 DOM 的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3633025/

相关文章:

javascript - 使用 KonvaJs-ReactJs 动态渲染对象

javascript - webpack 开发服务器路由问题

Php - Dom,在 nodeValue 中插入 HTML_CODE

javascript - 在 Web 组件中获取事件目标

html - 更正 XPath 查询以获取 div 内部文本

javascript - 用于检查 Javascript 对象是否为 html 元素的跨浏览器解决方案

javascript - 从 <object> 节点获取 SVG 根元素及其子元素以导出具有动态内容的 SVG

javascript - getSVGDocument 在 Chrome 中返回 NULL

reactjs - SwiperJS - ReactJS 旋转木马与视频和图像混合双响

javascript - select 中的 html 选择选项与我在 DOM 中看到的不同