js —— 如何打开新标签页(window.open应用)

js 如何打开新标签页(window.open应用)

标签中通过设置target="_blank"就可以实现打开新标签的效果。但有时候我们需要通过Javascript来打开新标签,那么怎么

实现呢?方法如下:

window.open("https://segmentfault.com");

或者:

window.open("https://segmentfault.com", "_blank"); //注意第二个参数

有人或许会觉得奇怪,window.open()不是用来打开新窗口的麽,怎么还可以打开新标签啊?其实只有在window.open()中指定了第三个属性(即新窗口的特征)时浏览器才会打开新的窗口,在没指定第三个属性时只会在当前窗口打开新的标签(在IE中,如果要打开的URL与当前页面URL不属于同一个主域名则打开新窗口;在Chrome中,如果window.open()函数不是被鼠标键盘事件调用的,而是页面直接调用或通过定时器等调用的,则打开新窗口而非标签)。此外,下面适用于标签的target参数同样适用于window.open()的name参数(第二个参数):

js —— 如何打开新标签页(window.open应用)_第1张图片

注意事项:

1.在IE中,如果要打开的域名和当前域名不属于同一个主域名,则会在新的窗口中打开(标签也是这样)。

2. 在Chrome中,如果window.open()函数不是被鼠标键盘事件调用的,而是页面直接调用或通过定时器(包括鼠标键盘触发的定时器)等

调用的,则打开新窗口而非标签。

2.在新窗口或新标签中,window.open()的_parent和_top参数是无效的(只有在frame中时有效)。

3.framename参数可以设置为当前页面内的frame的name值、新窗口的name值,或者新标签的name值。

【补充说明】

window.open( url,target,init); //URL 代表 页面地址; Target 代表 目的框架

1、在新标签/页面中打开链接

window.open('https://segmentfault.com','target','');

2、在当前页面中打开链接

(1)window.open('https://segmentfault.com','_self','');

(2)window.location.href='https://segmentfault.com';

Window open() 方法

你可能感兴趣的:(javascript)