全屏窗无提示关闭父窗口(不使用控件)【转自BlueIdea 作者:POPOEVER】

本文介绍了window.open()打开全屏窗口时无提示关闭父窗口的解决方案。传统控件法有局限,新思路是让父窗口自声明为子窗口,将“虚拟父窗口”设为null,用window.close()关闭。作者在IE6测试,未测其他兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

希望这是window.open()打开fullscreen全屏窗口时无提示关闭父窗口的完美解决方案:

我们通常都是用控件法,在父窗口文件里放一个:
<object id=closeWin type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"><param name="Command" value="CLOSE"></object>
然后子窗口closeWin.Click()来无提示关闭父窗口。

这样做的弊病是:这个<object>是outlook的一个控件,有些朋友习惯用比如foxmail这样的客户端,压根装windows的时候就没装outlook,那样就不会有效果。现在的解决思路就是让父窗口自己把自己再声明为子窗口,而这个原父窗口的“虚拟父窗口”其实并不存在,将他声明为null就可以了,这样既然原父窗口自己也变成“子窗口”了,那么就可以很方便地用window.close()来关闭他了,根本不用担心会有提示框:)

其实是我写代码的时候碰巧写错了,结果歪打正着:D!我只在IE6测试了,其他兼容性没测试~~~
<body onload="var cw=window.open('about:<body bgcolor=buttonface scroll=no>POPOEVER<br><br><span onclick=self.close()>点这里关闭</span></body>','','fullscreen');cw.resizeTo(400,300);cw.moveTo(screen.width/2-200,screen.height/2-150);opener='popo';window.close();">
</body>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值