gpt4 book ai didi

javascript - 如何在处理 DOM 之前使用 google chrome 内容脚本修改网页?

转载 作者:数据小太阳 更新时间:2023-10-29 04:37:36 25 4
gpt4 key购买 nike

使用 chrome 内容脚本,我想在加载内容之前删除网页中的多个 iframe。

我发现,在扩展 list 中使用属性 run_at:document_start 我的 javascript 是在主页请求之后和处理 DOM 以及加载图像、iframe 等之前执行的。从逻辑上讲,此时 DOM 结构不可用,我无法使用以下命令修改页面:

myelement=document.getElementById('iframeX');

myelement.parentNode.removeChild(myelement);

那我该如何访问和修改请求的页面数据呢?

最佳答案

您需要在 document_start 上触发您的内容脚本并添加一个 beforeload 监听器 - 您可以使用 event.preventDefault 有选择地阻止内容加载,然后删除试图加载内容的框架:

    document.addEventListener('beforeload', function(event) {
if (event.url.match('facebook')) {
event.preventDefault();
$(event.target).remove();
}
}, false);

我已经 blogged about an equivalent approach to using the beforeload event for Firefox还有。

关于javascript - 如何在处理 DOM 之前使用 google chrome 内容脚本修改网页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6304530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com