我尝试修改发现的一些脚本-但它们无法正常工作。
[当加载的页面上有一个链接指向:https://website.new/ia-o/number1/number2/number3/number4.jpeg.html
我希望它实际上指向:https://website.new/ib-o/number1/number2/number3/number4.jpeg.html
所以基本上只需替换链接中的一个字母(从*/ia-o/*
到*/ib-o/*
)
这是我尝试过的脚本:
// ==UserScript==
// @name website.new
// @namespace lii
// @description redirect to anothersite
// @include https://website.new/*
// @version 1
// @grant none
// ==/UserScript==
var links,thisLink;
links = document.evaluate("//a[@href]",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i=0;i<links.snapshotLength;i++) {
var thisLink = links.snapshotItem(i);
thisLink.href = thisLink.href.replace('https://website.new/ia-o/',
'https://website.new/ib-o/');
}
但是它什么也没做。
如果有人可以提供帮助,我将不胜感激!
Part2:更好的解决方案是,如果我可以像这样重新制作整个链接。
网页上的旧链接:https://website.new/ia-o/number1/number2/number3/number4.jpeg.html
页面上的新链接:https://website.new/o/number1/number2/number3/number4.jpeg
(因此从链接中删除ia-以及.html)
但是任何一种解决方案都行得通!
谢谢!
替换当前页面中所有链接中的href属性
// ==UserScript==
// @name website.new
// @namespace lii
// @description redirect to anothersite
// @include https://website.new/*
// @version 1
// @grant none
// ==/UserScript==
(function() {
for (var i=0,link; (link=document.links[i]); i++) {
link.href = link.href.replace('oldvalue', 'newvalue');
}
})();