Javascript 更改页面上的所有链接
我想更改页面上的所有链接,它适用于没有类的链接,但不适用于有类的链接 这是我正在使用的代码:Javascript 更改页面上的所有链接,javascript,hyperlink,Javascript,Hyperlink,我想更改页面上的所有链接,它适用于没有类的链接,但不适用于有类的链接 这是我正在使用的代码: window.onload = function() { /* onload code */ var anchors = document.getElementsByTagName("a"); for (var i = 0; i < anchors.length; i++) { anchors[i].href = "http://www.example.com/?redi
window.onload = function() {
/* onload code */
var anchors = document.getElementsByTagName("a");
for (var i = 0; i < anchors.length; i++) {
anchors[i].href = "http://www.example.com/?redirect=" + anchors[i].href
}
}
window.onload=function(){
/*加载代码*/
var archors=document.getElementsByTagName(“a”);
对于(var i=0;i
它适用于以下链接:
<a id="box-left" href="http://www.google.com"></a>
但不适用于此:
<a class="links" href="redirect.php?link=125411" onclick="launch();" target="_blank"></a>
我认为正确的功能应该是:
window.onload = function() {
/* onload code */
var anchors = document.getElementsByTagName("a");
for (var i = 0; i < anchors.length; i++) {
anchors[i].href = "http://www.mysite.com/?redirect=" + anchors[i].href
}
}
window.onload=function(){
/*加载代码*/
var archors=document.getElementsByTagName(“a”);
对于(var i=0;i
使用
而不是
var anchors = document.getElementsByTagName("class");
顺便说一句,我建议您使用jquery来选择dom元素。我在发布代码时对其进行了测试,它对我有效。
我将javascript放在标记中,将链接放在正文中。
可能页面上还有其他东西干扰了您。可能您有一些奇怪的CSS,将此链接与class=“links”属性混合在一起?您还可以尝试将类添加到这两种链接中,并按类选择
var anchors = document.getElementsByClassName("dynamic_links");
<a id="box-left" class="dynamic_links" href="http://www.google.com"></a>
<a class="links dynamic_links" href="redirect.php?link=125411" onclick="launch();" target="_blank"></a>
var-anchors=document.getElementsByClassName(“动态链接”);
让我知道这是怎么回事好吗?如果您使用的是jQuery,它就这么简单:
$('a').attr("href", "http://www.google.com/")
您好,很抱歉有一个输入错误,是的,我正在使用“a”而不是“class”,但它仍然不会更改使用class的链接。您好,很抱歉有一个输入错误,是的,我正在使用“a”而不是“class”,但它仍然不会更改使用class的链接。在下一个答案中找到我的建议尝试使用第一个锚点[I]。removeAttribute(“href”);然后设置它。可以触发document.onload,而不是window.onload。如果您将代码提供到JSFIDLE或JSBIN中会更好——我想更改链接的页面是否在iframe中?我认为CSS可以混合一些我上面写过的东西。JS对我来说还不错,但我不确定iFrame。您可以通过在函数的开头放置一个alert()来检查JavaScript是否被命中,并检查它是否在函数的结尾添加了另一个alert来完成整个过程。
$('a').attr("href", "http://www.google.com/")