gpt4 book ai didi

javascript - 如何将页面上的任何特定链接重定向到特定网址?

转载 作者:行者123 更新时间:2023-12-03 10:17:51 25 4
gpt4 key购买 nike

如何将页面上的任何特定链接重定向到特定网址?

我有一个网页,其中包含多个链接。

  • link1.com(20 个链接)
  • link2.com(15 个链接)
  • link3.com(8 个链接)

我希望每当有人点击 link1.com 时,他都会被重定向到 www.example.com

请告诉我如何实现这一目标。

使用下面的代码,我可以对屏幕上的当前页面进行重定向。但我需要对网站上的每个链接执行此操作。

最佳答案

这是一些示例代码。您可以编辑重定向变量以满足您的需求。重定向变量的索引是一个正则表达式,如果匹配,则链接将被重定向。

选项 1

<a href="http://link1.com">link 1</a>
<a href="http://link2.com/alsoredirected">link 2</a>
<a href="http://wikipedia.org">not redirected</a>

<script>
var aTags = document.getElementsByTagName("a");
var redirects = {
"http://link1.com": "http://google.com",
"link2.com": "http://google.com"
};

for(var i = 0;i < aTags.length; i++) {
aTags[i].addEventListener("click", function(event) {
var url = this.getAttribute("href");

for (var redirect in redirects) {
var pattern = new RegExp(redirect);

if (pattern.test(url)) {
window.location = redirects[redirect];
event.preventDefault();
}
}
});
}
</script>

选项 2

这是首选解决方案,因为它会在必要时替换 href 属性。因此,您不必在每次点击时检查重定向。

<a href="http://link1.com">link 1</a>
<a href="http://link2.com/alsoredirected">link 2</a>
<a href="http://wikipedia.org">not redirected</a>

<script>
var aTags = document.getElementsByTagName("a");
var redirects = {
"http://link1.com": "http://google.com",
"link2.com": "http://google.com"
};

for(var i = 0;i < aTags.length; i++) {
var url = aTags[i].getAttribute("href");

for (var redirect in redirects) {
var pattern = new RegExp(redirect);

if (pattern.test(url)) {
aTags[i].setAttribute("href", redirects[redirect]);
}
}
}
</script>

关于javascript - 如何将页面上的任何特定链接重定向到特定网址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29779999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com