有没有办法在整个页面中替换任何指向 https 的 http 链接?userscripts.org 中有一些脚本,但它们只重定向 url 而不会更改 html 内容..
谢谢
有没有办法在整个页面中替换任何指向 https 的 http 链接?userscripts.org 中有一些脚本,但它们只重定向 url 而不会更改 html 内容..
谢谢
如果您担心安全和隐私,最好安装和使用HTTPS Everywhere之类的扩展程序。
扩展程序有更多的能力来强制执行 SSL:链接、图像、视频和声音文件、CSS 和 javascript 文件、flash 对象、AJAX 调用等。而 Greasemonkey 脚本或用户脚本可能会花很多时间做部分那个。
但是,如果您真的只想更改<a>
页面中的链接(节点),那并不难。最需要考虑的是通过 AJAX 添加链接的网站。因此,请使用 jQuery 并waitForKeyElements()
处理所有链接。
这是一个完整的脚本,可帮助您入门:
// ==UserScript==
// @name _Remap links to https
// @include http://YOUR_SERVER.COM/YOUR_PATH/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant GM_addStyle
// ==/UserScript==
/*- The @grant directive is needed to work around a design change
introduced in GM 1.0. It restores the sandbox.
*/
waitForKeyElements ("a", remapToSSL);
function remapToSSL (jNode) {
var node = jNode.get (0);
if (node.protocol === "http:") {
node.protocol = "https:";
}
}