gpt4 book ai didi

javascript - 在动态页面上使用 javascript 重写链接

转载 作者:行者123 更新时间:2023-11-28 10:11:49 27 4
gpt4 key购买 nike

我正在编写一个脚本,该脚本应该将页面上的所有链接从 http://重写为 https:// - 它必须在客户端完成,它在我无法控制的页面中运行。

执行环境:仅限最近的Chrome,因为这是Chrome扩展的注入(inject)脚本,所以不用担心跨浏览器。注入(inject)发生在 document_start 处(即在 DOM 开始加载之前)。

我的第一次尝试是监视 DOMContentLoaded,然后迭代 document.links:

document.addEventListener("DOMContentLoaded", rewriteHTTPS, false);

function rewriteHTTPS() {
var links = document.links;
for(var i in links){
links[i].href = links[i].href.replace(/http:/, "https:");
}
}

不幸的是,我意识到该页面是动态的,因此在触发此事件后会添加更多链接。

所以,问题是:使用动态 DOM 捕获页面中所有新链接和修改链接的最佳方式是什么?

最佳答案

您可能想研究一下监听 DOMNodeInserted事件,尽管它在 IE 中的支持似乎参差不齐。该问题的其他答案也可能有帮助。

关于javascript - 在动态页面上使用 javascript 重写链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7344546/

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