假设我有一个页面,我想在其中为每个 url(还有图像等)附加一个参数(例如 ?name=fc
)。
我正在尝试使用正则表达式对 greasemonkey 执行此操作,但它似乎不起作用(即页面上的链接不会更改)。
这是我的代码
var txt = document.documentElement.innerHTML;
var exp = "/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig" ;
document.documentElement.innerHTML =( txt.replace(exp, "$1?name=fc"));
我的 JavaScript 知识几乎为零,所以请耐心等待。
那么问题来了,那个 JavaScript 有什么问题?
最佳答案
for(var i = 0; i < document.links.length; i++) {
document.links[i].href += "?name=fc"
}
你应该只使用 document.links属性。这会将“?name=fc”附加到所有链接(a 和 img 等)。
关于javascript - 更改页面加载时的所有网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5425059/