如何在新窗口中打开链接?

Chr*_*ris 93 javascript jquery

我有一个特定链接的点击处理程序,在里面我想做类似以下的事情:

window.location = url
Run Code Online (Sandbox Code Playgroud)

我需要这个在新窗口中实际打开网址,我该怎么做?

Sar*_*raz 202

你可以这样:

window.open('url', 'window name', 'window settings')
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$('a#link_id').click(function(){
  window.open('url', 'window name', 'window settings');
  return false;
});
Run Code Online (Sandbox Code Playgroud)

您也可以将其设置target_blank实际.

  • _blank是默认目标,因此使用window.open(url)就足够了 (25认同)

小智 33

以下是如何在单击处理程序中强制执行目标:

$('a#link_id').click(function() {
    $(this).attr('target', '_blank');
});
Run Code Online (Sandbox Code Playgroud)

  • 不需要在单击处理程序中使用jQuery选择器,因此行'$(this).attr('target','_ _ blank');`可以更改为`this.target ="_ blank";`此外,如果锚点链接在页面上可以修改为具有`rel ="external"`属性然后你可以使用jQuery选择器`a [rel ="external"]`为页面创建一个全局点击处理程序,而不是选择每个链接的点击处理程序用`#link_id` (5认同)

Amr*_*rhy 17

你需要使用 window.open(url);

参考文献:
http://www.htmlcodetutorial.com/linking/linking_famsupp_120.html
http://www.w3schools.com/jsref/met_win_open.asp

  • 哎呀!不要使用或链接到w3schools,它与W3C无关.请改用MDN:https://developer.mozilla.org/en-US/docs/Web/API/Window.open (5认同)
  • w3schools很好(忽略'少数'w3c巨魔)...将继续成为权威来源......甚至w3c现在再次支持它;-) (5认同)

小智 5

您还可以使用 jquery prop() 方法来实现此目的。

$(function(){
  $('yourselector').prop('target', '_blank');
}); 
Run Code Online (Sandbox Code Playgroud)