如何打开一个URL在新标签而不是新窗口编程?
使用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');
}
这取决于浏览器的实现
没有什么可以做,使它打开在一个窗口,而不是一个标签。
这很简单。
window.open('_link is here_', 'name');
功能描述:
Name是窗口的名称。支持以下名称:
_blank - URL被加载到一个新的选项卡。这是默认值。 _parent - URL被加载到父帧 _self - URL替换当前页面 _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[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');
});
推荐文章
- 检测用户何时离开网页的最佳方法?
- 当“模糊”事件发生时,我如何才能找到哪个元素的焦点去了*到*?
- 在ASP中实现请求节流的最佳方法。净MVC吗?
- React不会加载本地图像
- 如何将Blob转换为JavaScript文件
- 在另一个js文件中调用JavaScript函数
- 如何在svg元素中使用z索引?
- 如何求一个数的长度?
- 跨源请求头(CORS)与PHP头
- 如何用Express/Node以编程方式发送404响应?
- parseInt(null, 24) === 23…等等,什么?
- 使用jQuery获取第二个孩子
- JavaScript变量声明在循环外还是循环内?
- 元素在“for(…in…)”循环中排序
- 在哪里放置JavaScript在HTML文件?