如何使用JavaScript或jQuery在新选项卡中打开URL?

如何使用JavaScript或jQuery在新选项卡中打开URL?,javascript,jquery,asp.net-mvc,Javascript,Jquery,Asp.net Mvc,如何以编程方式在新选项卡而不是新窗口中打开URL?使用window.open(): 这取决于浏览器的实现 除了在选项卡中打开,您无法在窗口中打开它 就这么简单 var url = "http://www.example.com"; window.open(url, '_blank'); window.open('_link is here_', 'name'); 功能描述: name是窗口的名称。支持以下名称: \u blank-URL被加载到新选项卡中。这是默认设置 \u pare

如何以编程方式在新选项卡而不是新窗口中打开URL?

使用
window.open()

这取决于浏览器的实现


除了在选项卡中打开,您无法在窗口中打开它

就这么简单

 var url = "http://www.example.com";
 window.open(url, '_blank');
window.open('_link is here_', 'name'); 
功能描述:

name
是窗口的名称。支持以下名称:

  • \u blank
    -URL被加载到新选项卡中。这是默认设置
  • \u parent
    -URL已加载到父帧中
  • \u self
    -URL将替换当前页面
  • \u top
    -URL将替换可能加载的任何框架集

您可以轻松创建新选项卡;请执行以下操作:

function newTab() {
     var form = document.createElement("form");
     form.method = "GET";
     form.action = "http://www.example.com";
     form.target = "_blank";
     document.body.appendChild(form);
     form.submit();
}

我知道你的问题没有说明你是想在新窗口中打开所有a标签还是只打开外部链接

但如果您只希望在新选项卡中打开外部链接,则可以执行以下操作:

$( 'a[href^="http://"]' ).attr( 'target','_blank' )
$( 'a[href^="https://"]' ).attr( 'target','_blank' )

如果您想在“新建”选项卡上打开所有链接,请尝试使用此jquery

$(document).on('click', 'a', function(e){ 
    e.preventDefault(); 
    var url = $(this).attr('href'); 
    window.open(url, '_blank');
});

但这取决于用户的浏览器首选项。这不是编程…@FabianCook这是一种编程语言语法。。。所以我称之为编程!嗯,实际上在这个问题上,人们回答得最好的是这个问题,而不是topHi dude中标记为link的问题。。当我像这样打开时,我越来越像firefox阻止了这个网站打开弹出窗口…修改你的实现为用户驱动(即点击一个链接),而不是自动执行(即页面加载)。。。然后赞美义人blocker@Vicky您的
元素是否附加了其他事件?您可能需要更改
。单击
上的
(“单击”
我正在尝试使用您的答案实现相同的逻辑,但当我尝试右键单击并在“新”选项卡中打开链接时,它不会。您知道如何解决这个问题吗?
\u blank
在这个调用中做了什么?它是浏览器窗口的一个特殊名称,每次都会创建一个新窗口,或者您可以使用特定的名称与“登录屏幕”类似,如果窗口已加载,它将使用您提供的URL重新加载内容。open()
将导致弹出警告,这是一种不需要的用户体验。相反,在某处引入隐藏的
,并使用
执行单击。例如:
document.getElementById('click_me')。click()
一段完美的代码。谢谢:)它将www.google.com视为一个内部链接。如何在新选项卡中打开它?或者添加http为了安全起见,可以添加“noopener”和“noreferrer”窗口功能:window.open(“url”,“_blank”,“noopener,noreferrer”);
$(document).on('click', 'a', function(e){ 
    e.preventDefault(); 
    var url = $(this).attr('href'); 
    window.open(url, '_blank');
});