强制浏览器在新窗口中打开url

需求前提:

有一个页面,里面分为N个功能与N个任务。功能模块链接单击应该在当前窗口中新开标签,而单击任务需要新开一个窗口。在任务窗口中再单击其他的链接应该在这个任务窗口中新开标签。

1、起初使用以下方法:

<a href="b.html" target="_blank">新开标签中打开功能</a>
<a href="###" onclick="openWindow();">新开窗口打开一个任务</a>
<script type="text/javascript">
    function openWindow() {
        var height = window.screen.availHeight,
            width  = window.screen.availWidth;
            
        window.open('c.html', '任务', 'height=' + height + ',width=' + width);
    }
</script>

单击【新开标签中打开功能】链接,会在新标签中打开,虽然设置了target='_blank',但也会新开标签,当单击【新开窗口打开一个任务】时,会使用window.open来打开一个新的窗口。看似挺完美的解决方案,但如果再往下进行就会出问题。我们在c.html中再打开一个链接时,在Firefox16.0.2下会直接在母窗口中打开一个标签。而ie8/9会再开一个新窗口,也就是说,window.open打开的窗口不支持标签,即新开的窗口就仅仅是一个窗口。

2、使用跳转,即window.open打开一个临时窗口d.html,在这个d.html中再使用form来打开一个新窗口,理论上是可行。

<form id="myForm" name="myForm" action="c.html" target="_blank">
</form>
<script type="text/javascript">
    document.myForm.target = '_blank';
    document.myForm.submit();
    window.close();
</script>

使用ie8/9测试,还算是可以,虽然新开的窗口不能充满整个显示器,但能够满足我们的需求。但在firefox下测试就不尽人意了,会发现还是在当前窗口中打开一个新的标签。

转载于:https://www.cnblogs.com/AUOONG/archive/2012/11/13/2767575.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值