JavaScript如何判断一个弹出窗口是否关闭

JavaScript012

JavaScript如何判断一个弹出窗口是否关闭,第1张

你指的弹出窗口是指alert这样的js自带的弹窗,还是只自定义浮于其他组件上的弹窗?系统自带的,确认框也好,输入框也好,都是有阻塞的,因为js是单线程语言,所以弹窗弹出后,整个页面都会阻塞,你的下一步操作可以放在弹窗之后,因为只有完成了弹窗的关闭,之后的代码块才会执行,也就是说在此之后默认就是弹窗关闭了,对于有返回值的也可以用返回值判断。其次就是自定义的弹窗,一般就是div一个遮罩层和一个业务层,使用绝对布局加z-index就可以,这种要判断弹窗是否关闭一般来说有两种,一是生成型弹窗,用js生成,平时不存在与html中,用寻找对应id的组件是否存在的方式就可以判断是否处于关闭状态,二是隐藏型弹窗,给一个display:none的属性,要弹出时就将属性更改为block之类,一般这种就是直接比较这个div的样式中display是否等于none就可以了。

js 关闭窗口的方法:

1、 不带任何提示关闭窗口的js代码

<a href="javascript:window.opener=nullwindow.open('','_self')window.close()">关闭</a>

2、自定义提示关闭

<script language="javascript">

// 这个脚本是 ie6和ie7 通用的脚本

function custom_close(){

if

(confirm("您确定要关闭本页吗?")){

window.opener=null

window.open('','_self')

window.close()

}

else{}

}

</script>

<input id="btnClose" type="button" value="关闭本页" onClick="custom_close()" />