首页 > 解决方案 > 如何使用 JavaScript 在不更改锚标记的 Href 中的路径的情况下更改目标域?

问题描述

我有一个关于 JavaScript 的问题。

如何在不更改 URL 目标路径的情况下通过 JavaScript 更改标签的href属性值<a/>

例子:

<a href="http://domain1.com/page">Link 1</a>
<a href="http://domain1.com/page2">Link 2</a>
<a href="http://domain1.com/page3">Link 3</a>

我想把它变成:

<a href="http://domain2.net/page">Link 1</a>
<a href="http://domain2.net/page2">Link 2</a>
<a href="http://domain2.net/page3">Link 3</a>

谢谢

标签: javascript

解决方案


如果您需要支持 IE ,URL请使用API并为其寻找 polyfill。

const a = document.querySelector("a");
const original_href = a.href;
const url = new URL(original_href);
url.host = "domain2.com";
const new_href = "" + url;
a.href = new_href;
console.log(new_href);
<a href="http://domain1.com/page">Link 1</a>


推荐阅读