要消除window.close()的提示窗口,我们需要了解以下几点:
要消除window.close()
的提示窗口,我们需要了解以下几点:
- 当前窗口和弹出窗口必须为同一域名或者同源,否则无法关闭弹出窗口;
- 浏览器的安全策略会对
window.close()
进行限制。只有在窗口是由脚本打开的,才能使用window.close()
关闭窗口。
下面我们来讨论在不弹出提示框的情况下,如何使用JavaScript关闭窗口。
方法一:使用window.opener
在打开弹出窗口的脚本中,我们可以将这个窗口的window
对象存储在当前窗口的window
对象中,使用window.opener
可以获取到这个对象。要关闭弹出窗口,我们只需要在弹出窗口中调用window.opener.close()
即可。
示例1:
在当前页面中打开弹出窗口:
var popup = window.open('popup.html', 'popup', 'width=320,height=240');
// 把window对象存储到当前的window.opener中
window.popup = popup;
在弹出窗口的脚本中调用window.opener.close()
来关闭弹出窗口:
// 关闭window.opener,即当前窗口
window.opener.close();
方法二:使用window.parent
在打开弹出窗口的脚本中,我们可以将这个窗口的window
对象存储在当前窗口的window
对象中,使用window.parent
可以获取到这个对象。要关闭弹出窗口,我们只需要在弹出窗口中调用window.parent.close()
即可。
示例2:
同样在当前页面中打开弹出窗口,并把当前窗口的window
对象存储到父窗口的window
对象中:
var popup = window.open('popup.html', 'popup', 'width=320,height=240');
window.parentPopup = window;
在弹出窗口的脚本中调用window.parent.close()
来关闭弹出窗口:
// 关闭window.parent,即父窗口
window.parent.close();
以上是两种常用的消除window.close()
提示框的方法。但需要注意的是,由于浏览器的安全限制,这些方法并不适用于所有浏览器和所有情况。在使用时应根据具体情况做出决定。
本文标题为:javascript消除window.close()的提示窗口
基础教程推荐
- Xterm.js入门官方文档示例详解 2024-01-06
- HTML学习第二章 2023-10-28
- JavaScript获取当前url根目录(路径) 2024-01-03
- JavaScript实现斗地主游戏的思路 2023-12-01
- vue3页面跳转的两种方式 2023-07-09
- HTML-Canvas的优越性能以及实际应用 2022-11-20
- 前端vue按1920*1080设计图的页面适配屏幕缩放并适配4K屏详解 2024-01-08
- Vue_vue_demo、v-model与v-on事件 2023-10-08
- 如何通过双击Windows XP中的html文件之类的任何文件夹来运行php文件? 2023-10-25
- JS触摸事件、手势事件详解 2023-12-01