如何打开一个URL在新标签而不是新窗口编程?
使用window.open():
window.open()
var win = window.open('http://stackoverflow.com/', '_blank'); if (win) { //Browser has allowed it to be opened win.focus(); } else { //Browser has blocked it alert('Please allow popups for this website'); }
这取决于浏览器的实现
没有什么可以做,使它打开在一个窗口,而不是一个标签。
var url = "http://www.example.com"; window.open(url, '_blank');
这很简单。
window.open('_link is here_', 'name');
功能描述:
name是窗口的名称。支持以下名称:
name
_blank
_parent
_self
_top
你可以很容易地创建一个新标签;像下面这样做:
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[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'); });