有些超链接没有加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();
});
});
})();
4 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答761 阅读✓ 已解决
1 回答1.5k 阅读
1 回答1.2k 阅读
1 回答868 阅读
在head里面加上base标签,
<base target="_blank" />