JavaScript中的onunload不能用的解决办法决办法
今天学习JavaScript中的onunload事件,然后自己开始试一下效果,大概按照在w3school中看的,写了一下代码,发现并没有什么卵子用,我刚开始写的代码如下:
<script>
window.onunload=function(event){
alert("你真的要关闭此网页吗?");
}
</script>
测试结果: 正常关闭无提示
后来我就去百度了一下,论坛上面说,用onbeforeunload来替换onunload,后来出现了这个代码
<script>
window.onbeforeunload=function(event){
alert("你真的要关闭此网页吗?");
}
</script>
还是没有效果,效果图就不上了
后来才知道,onunload和onbeforeunload都是在页面关闭时销毁页面,而alert()语句,已经被销毁,所以不再执行,直接跳过,可以看下面的图:
图上,当页面执行到onbeforeunload的时候,直接就结束了这个函数,没有执行alert()语句
那怎么解决不弹出的问题的,我们再试一个语法:event.teturnValue
event.teturnValue:当捕捉到事件(event)时,判断为false,则阻止当前事件继续运行
onunload结合event.teturnValue
<script>
window.onunload=function(event){
event.returnValue = false;
}
</script>
结果:无效果
onbeforeunload结合event.teturnValue
<script>
window.onunload=function(event){
event.returnValue = false;
}
</script>
结果:当页面关闭时弹出框框
在线预览地址:点我预览
html文件下载:JavaScript中的onunload不能用的解决办法.html