我们通常都是用控件法,在父窗口文件里放一个:
<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()来关闭他了,根本不用担心会有提示框:)
其实是我写代码的时候碰巧写错了,结果歪打正着!我只在IE6测试了,其他兼容性没测试。
运行代码框
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
(出处: