为了安全性考虑,target="_blank"较好的用法如下:
<a href="https://www.baidu.com" target="_blank" rel="noopener noreferrer nofollow">巴拉巴拉</a>
解释:
由于在跨域的情况下,opener 可以调用 location.replace 方法引导用户进入恶意网站,加入noopener之后,在打开的新标签页中,将无法再使用 opener 对象了,它为设置为了 null。加入noreferrer之后限制了 referer 的传递,保证来源隐私安全。在跳转到第三方网站的时候,为了 SEO 权重,还建议带上 rel=”nofollow”,所以最终类似于文章开始那样。(注:这些属性不是所有浏览器都支持,当不支持的时候可使用下方js解决)
支持的主流浏览器:FireFox52及其以上、Chrome49及其以上、Safari10.1及其以上、Opera36及其以上。
或者js将opener设为null:"use strict";
function openUrl(url) {
var newTab = window.open();
newTab.opener = null;
newTab.location = url;
}