[求助] 关闭页面才触发,页面转换不触发——请问用什么事件?

Broadsea 2003-10-11 09:52:34
例如:

当前页面 1.htm

关闭 1.htm 触发弹出特定页面。

当从 1.htm 跳转至 2.htm 以及其他页面都不会触发。
...全文
126 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
TCMY 2003-10-12
  • 打赏
  • 举报
回复
up
saucer 2003-10-11
  • 打赏
  • 举报
回复
在IE6 SP1 (win2k SP4) 里试了下面六种关闭窗口的方法:
1。双击左上IE图标
2。按右上角X
3。去菜单文件->关闭
4。ALT+F4
5。window.close()
6。用WebBrowser控件

如果你有别的关闭方法,请验证一下


<script language=javascript>
function window.onunload()
{
if (event.clientX <0 && event.clientY < 0)
alert("yes"); //window.open("http://www.csdn.net","_blank");
}
</script>

<A HREF="#" onclick="javascript:window.opener=null;window.close();">CLOSE</A>

<object classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" id=closewin></object>
<input type="button" value="close" onclick="closewin.ExecWB(45,1)">
zhanghk 2003-10-11
  • 打赏
  • 举报
回复
onunload和onbeforeunload都无法区分关闭页面和刷新、跳转、提交,光识别右上角的关闭按钮也不行,还有很多别的关闭窗口方法
kingdomzhf 2003-10-11
  • 打赏
  • 举报
回复
onfocus事件

<BODY>
HTML 1
<script>
window.onfocus = function(){alert('obtain focus')}
</script>
</BODY>
saucer 2003-10-11
  • 打赏
  • 举报
回复
IE里没有onwindowclosing事件,所以你只能通过onunload来判断

当你关闭窗口时,

event.clientX <0 && event.clientY < 0

起码在IE6里是这样的
Broadsea 2003-10-11
  • 打赏
  • 举报
回复
感谢 saucer(思归) 老大!
cloudchen 2003-10-11
  • 打赏
  • 举报
回复
没有办法!!!!

只能识别右上角的关闭按钮
slumcherry 2003-10-11
  • 打赏
  • 举报
回复
好像不行吧? onbeforeunload和onunload都是在这种情况下触发的:
任何卸载或者替换当前页面的用户或者脚本行为都会触发.
楼主提的要求不是刚好满足吗?
Broadsea 2003-10-11
  • 打赏
  • 举报
回复
以上的例子能保证页面跳转不触发么?

强调一下,只有关闭页面在需要触发!
希默软件 2003-10-11
  • 打赏
  • 举报
回复
onunload和onbeforeunload都无法区分关闭页面和刷新、跳转、提交
saucer 2003-10-11
  • 打赏
  • 举报
回复
注意,我没有说上面的方法是完美的,我一贯的主张是,实用就行了,不用追求完美

>>>把鼠标放到左上角,按f5试试
>>>右键菜单后,把鼠标放到左上角,按R试试

不太明白,在IE6 SP1上,这两种方法只是刷新页面而已,好像不能关闭窗口
longshenwang 2003-10-11
  • 打赏
  • 举报
回复
好像都没达到要求啊!!! 应该是不能使用onUnload事件触发了
bonniewater 2003-10-11
  • 打赏
  • 举报
回复
<HTML>
<HEAD>
<script Language="JavaScript">
<!--
function loadform(){
alert("这是一个自动装载例子!");
}
function unloadform(){
alert("这是一个卸载例子!");
}
//-->
</Script>
</HEAD>
<BODY OnLoad="loadform()" OnUnload="unloadform()">
<a href="2.htm">调用</a>
</BODY>
</HTML>
saucer 2003-10-11
  • 打赏
  • 举报
回复
try

<script language=javascript>
function window.onunload()
{
if (event.clientX <0 && event.clientY < 0)
window.open("http://www.csdn.net","_blank");
}
</script>
notend990342 2003-10-11
  • 打赏
  • 举报
回复
用unload事件
nolonely 2003-10-11
  • 打赏
  • 举报
回复
不用多费工夫,没有完美的方法

to 思归:
把鼠标放到左上角,按f5试试
右键菜单后,把鼠标放到左上角,按R试试
gdeljyh 2003-10-11
  • 打赏
  • 举报
回复
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
function window.onbeforeunload() {
if( !(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey) ){
//在刷新、或以_self方式转到其它页面、或用ALT+CTLR+DEL关闭时触发;
alert("A");
}else{
//点击工具栏上的[X]按钮、或ALT+F4关闭时触发
alert("B");
}
}
//-->
</SCRIPT>

87,988

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧