Skip to content

Latest commit

 

History

History
43 lines (33 loc) · 1.37 KB

在新标签页中打开所有链接.md

File metadata and controls

43 lines (33 loc) · 1.37 KB

在新标签页中打开所有链接

我们都知道,将 target="_blank" 属性设置为单个链接将在新选项卡中打开它。

在一个真实的用例中,你希望在一个新选项卡中打开页面上的所有链接,这是很少见的。一个只收集外部资源链接的网站可能就是一个例子。

在这种情况下,你只需将其设置为 base 标签,而不是将属性添加到所有链接:

<head>
  <base target="_blank" />
  ...
</head>
<body>
  <a href="https://www.baidu.com">百度一下,你就知道</a>
</body>

注意,就像我们说的那样,链接会在新窗口中打开,即使链接中没有 target="_blank" 属性。这是因为 base 元素的 target 属性已经被设置为 _blank 了。

你还可以为所有 a 标签上 href 属性为空的链接添加一个 URL 指向:

<head>
  <base href="https://www.baidu.com" />
  <base target="_blank" />
  ...
</head>
<body>
  <a href="https://www.baidu.com">百度一下,你就知道</a>
</body>

当然,你也可以使用 JavaScript 来设置所有链接的 target 属性为 _blank。例如:

const links = document.getElementsByTagName('a');
for (let i = 0; i < links.length; i++) {
  links[i].target = '_blank'
}

但显然,如果需要使网站的所有链接都在新标签页中打开,base 标签是最方便的选择。