为了账号安全,请及时绑定邮箱和手机立即绑定

为啥ie我本地试也没效果赛,为什么不用加括号成 window.onunload = onunload_message();

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title> 卸载事件 </title>

<script type="text/javascript">   

     window.onunload = onunload_message;   

     function onunload_message(){   

        alert("您确定离开该网页吗?");   

    }   

</script>   

</head>

<body>

  欢迎学习JavaScript。

</body>

</html>


正在回答

4 回答

对了,调试时记得把go方法里面的//符号给去掉哈

0 回复 有任何疑惑可以回复我~

不知道你是否解决问题了,按照我的思路如下:

卸载事件通俗的讲,就是离开当前网页时候会触发,离开当前网页有两种方式,
1.像平常我们关闭网页,也就是离开网页了;2.在当前网页点击加载其他网页,跳转到其他网页,也是离开当前网页的一种;
onunload属于第2种,只有当你要跳转到另一个页面时,也就是要离开当前网页了,要跳转到另一个网页了,onunload才会被触发;
那平常时关闭网页就直接跳出一个对话框是怎么办到的?原来还有一个onbeforeunload,顾名思义,就是在onunload被执行之前,就被调用,无论是以上2种跳转方法中的哪种,onbeforeunload都会被触发。

应该不难理解了吧?给你贴个代码

<html>

<head>

<title>test close window</title>

<script type="text/javascript"> 


function jump(){


    alert("我要跳转了哈!!");

}


function go(){

 //alert("离开么?");

</script>

</head>


<body  onunload="jump(); " onbeforeunload="go();">

<h1>hello world</h1>

<a href="http://www.baidu.com">heloo </a>

</body>

</html>


如果要做成我们平时浏览网页的关闭效果,就在go方法里把alert("离开么?")换成event.returnValue = "真的要退出吗?";你可以试下效果


0 回复 有任何疑惑可以回复我~

有时浏览器会限制执行javascript

0 回复 有任何疑惑可以回复我~

这个是关闭页面才执行的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为啥ie我本地试也没效果赛,为什么不用加括号成 window.onunload = onunload_message();

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信