我正在尝试在字符串中获取网站主体部分中的所有HTML链接,并将其替换为另一个链接。
尝试过这样的事情,但没有奏效:
var search = "https://www.cloudflare.com/5xx-error-landing?utm_source=error_footer";
var replacement = "https://example.com/";
document.body.innerHTML = document.body.innerHTML.split(search).join(replacement)
“https://www.cloudflare.com/5xx-error-landing?utm_source=error_footer”是我要替换的链接,“https://example.com/”是我要替换的链接。
答案 0 :(得分:5)
这个怎么样:
$("[href='your link']").attr("href","new link");
答案 1 :(得分:0)
$('body').find('a').each(function(){
$(this).attr('href','your_new_link');
});
或针对不同的href:
$('body').find('a').each(function(){
var ahref = $(this).attr('href');
if ( ahref == 'your_old_link') { /// or ahref.indexOf("your_old_link") >= 0
$(this).attr('href','your_new_link_1');
}else{
$(this).attr('href','your_new_link_2');
}
});
答案 2 :(得分:0)
只需使用
$("body a[href='https://www.cloudflare.com']").attr("href","https://example.com/");
答案 3 :(得分:0)
以下是根据您的问题使用普通javascript的解决方案
document.querySelectorAll("[href='" + search + "']").forEach(function(el){
el.href = replacement );
});
如果你想使用jQuery,就像你标记的那样,按照Nir Tzezana的回答