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参数:
注意事项:
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';