有些超链接没有加target="_blank",于是当前页面就跳转了,但我当前页面还是需要的,有没有办法让所有超链接都以新tab弹出
有些超链接没有加target="_blank",于是当前页面就跳转了,但我当前页面还是需要的,有没有办法让所有超链接都以新tab弹出
用js拿到每个a标签,然后click的时候,用preventdefault阻止默认事件,获取a标签定向的url,然后通过window.open()打开新的tab页面。
代码如下
(function(){
var allATags = document.querySelectorAll("a");
[].forEach.call(allATags, function(aTag){
aTag.addEventListener("click", function(e){
e.preventDefault();
var url = this.getAttribute("href");
var win = window.open(url, "_blank");
win.focus();
});
});
})();
2 回答919 阅读✓ 已解决
2 回答908 阅读✓ 已解决
2 回答861 阅读
1 回答712 阅读
1 回答722 阅读
1 回答625 阅读
在head里面加上base标签,
<base target="_blank" />