扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:baocl 来源:赛迪网技术社区 2007年10月30日
关键字: 关闭 窗口功能 JavaScript
当你创建了一个新窗口时,将open()方法的返回值分配给一个变量非常重要。比如,下面的语句就是创建一个新窗口,然后立即关闭它: 当你点击第1个链接打开新窗口后,浏览器就“记住”了它是由一个脚本程序生成的。所以,当你点击按钮时,新窗口不用再确认操作就被关闭。第2个链接是另外一回事了,它不使用任何JavaScript打开一个新窗口,当你点击按钮时,Internet Explorer将显示一个确认对话框。然而,Navigator立即关闭这个窗口,因为,新窗口在会话历史中没有任何文档。 JavaScript允许你在其他的窗口使用一段脚本程序关闭另外一个窗口。 点击后关闭的窗口 许多标准的应用程序都有一个About对话框,当用户在其中任何地方点击一次鼠标时,窗口就被关闭。下面就对窗口使用JavaScript来实现同样的效果。首先,请看看打开新窗口的代码: About 点击链接后,生成一个新窗口。然后,你可以在其中点击任何地方,就关闭那个窗口。在文件about.html的HEAD区域,添加下面的脚本程序: 依赖性窗口 窗口的依赖性特征定义了是否窗口应该是一个当前窗口的依赖性子窗口。依赖窗口就是当它的父窗口关闭时,它也随即关闭。dependent特征仅仅在Navigator 4和以上版本被支持。然而,我们可以使用一小段JavaScript程序来处理交叉浏览器。让我们使用下面的函数来打开一个依赖性窗口: function openDep() { win = window.open("depwin.html", "dep", "height=200,width=400"); } 如果当前窗口关闭时,或者调入一个新的URL时,我们将使用onUnload事件处理程序来关闭依赖性窗口: 注意,当前文档被卸载时,新窗口将关闭,即使当前窗口仍然打开。下面是closeDep()函数的代码: function closeDep() { if (win && win.open && !win.closed) win.close(); } 注意,在试图关闭前,我们必须检查窗口是否存在。 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。