Onunload 与 Onbeforeunload
Onunload,onbeforeunload 都是在刷新或关闭时调用, 可以在 <script> 脚本中通过 window.onunload 来指定或者在 < body > 里指定. 区别在于 onbeforeunload 在 onunload 之前执行, 它还可以阻止 onunload 的执行.
Onbeforeunload 也是在页面刷新或关闭时调用, Onbeforeunload 是正要去服务器读取新的页面时调用, 此时还没开始读取; 而 onunload 则已经从服务器上读到了需要加载的新的页面, 在即将替换掉当前页面时调用. Onunload 是无法阻止页面的更新和关闭的. 而 Onbeforeunload 可以做到. 曾经做一个考试系统, 涉及到防止用户半途退出考试代码如下:
Java 代码
- <script type="text/javascript">
- <!--
- window.onbeforeunload = onbeforeunload_handler;
- window.onunload = onunload_handler;
- function onbeforeunload_handler(){
- var warning="确认退出?";
- return warning;
- }
- function onunload_handler(){
- var warning="谢谢光临";
- alert(warning);
- }
- // -->
- </script>
- <script type="text/javascript">
- <!--
- window.onbeforeunload = onbeforeunload_handler;
- window.onunload = onunload_handler;
- function onbeforeunload_handler(){
- var warning="确认退出?";
- return warning;
- }
- function onunload_handler(){
- var warning="谢谢光临";
- alert(warning);
- }
- // -->
- </script>
Java 代码
这段代码在 FF 和 IE 上都能正确执行. 再点击关闭按钮时首先触发 obbeforeunload 事件, 点击否定时不执行 onload 事件.
这段代码在 FF 和 IE 上都能正确执行. 再点击关闭按钮时首先触发 obbeforeunload 事件, 点击否定时不执行 onload 事件. Java 代码
通常应用在 注销 session 等等登陆信息 等方面....
通常应用在 注销 session 等等登陆信息 等方面....Java 代码
这里一并推荐一个 ActionScript3 的好教程: <A href="http://gskinner.com/talks/as3workshop/">http://gskinner.com/talks/as3workshop/</A>
这里一并推荐一个 ActionScript3 的好教程: http://gskinner.com/talks/as3workshop / 写道
运用 onunload 事件判断浏览器是刷新还是关闭窗口
写道
- function CloseOpen(event) {
- if(event.clientX<=0 && event.clientY<0) {
- alert("关闭");
- }
- else
- {
- alert("刷新或离开");
- }
- }
Java 代码
- window.onbeforeunload = function() //author: meizz
- {
- var n = window.event.screenX - window.screenLeft;
- var b = n> document.documentElement.scrollWidth-20;
- if(b && window.event.clientY < 0 || window.event.altKey)
- {
- alert("是关闭而非刷新");
- window.event.returnValue = ""; // 这里可以放置你想做的操作代码
- }
- }
来源: https://www.cnblogs.com/lhl-shubiao/p/6686097.html