如何在新标签中打开链接时保持当前窗口?

Ene*_*oma 24 html jquery

当用户点击链接时

<a href="http://www.stackoverflow.com" target="_blank">click</a>
Run Code Online (Sandbox Code Playgroud)

有没有办法留在当前窗口而不是去标签?

小智 6

<a href="www.stackoverflow.com" onclick="window.open('#','_blank');window.open(this.href,'_self');">
Run Code Online (Sandbox Code Playgroud)

这将在浏览器将聚焦的新选项卡中加载当前网页,然后在当前选项卡中加载 href

  • 请不要。这实际上可能会打开一个新窗口或触发弹出窗口阻止程序。 (5认同)

Ade*_*ene 5

我猜 target="_blank" 会打开新选项卡/Windows,但也会切换选项卡,我无法在 html 中找到它们,是的,但是当我们点击链接时按下控制键,它会在新的背景选项卡中打开链接, 使用 javascript 我们可以刺激相同的这是我找到的代码

function openNewBackgroundTab(){    
    var a = document.createElement("a");    
    a.href = "http://www.google.com/";    
    var evt = document.createEvent("MouseEvents");    

    //the tenth parameter of initMouseEvent sets ctrl key    
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0,true, false, false, false, 0, null);    
    a.dispatchEvent(evt);
}
Run Code Online (Sandbox Code Playgroud)


ale*_*lex -2

目前没有办法控制这一点。


如果你想删除现有的行为:

有没有办法留在当前窗口而不是转到选项卡[当链接有target="_blank"]?

只有当你先做这样的事情......

$('a[target="_blank"]').removeAttr('target');
Run Code Online (Sandbox Code Playgroud)

  • 这不是开玩笑,这个问题只有(至少)两种不同的解释(既然这个问题被接受了,亚历克斯的解释肯定不是完全错误的)。**解释1:** 在新选项卡中打开链接,但将焦点保留在用户所在的页面上。**解释2:** 单击时在当前选项卡中打开链接(即使它的“target”设置为“_blank”) - 此处正确回答。 (5认同)