您的位置:首页 > 其它

加载页面或返回到页面时不触发 onload 事件处理程序

2013-06-18 15:37 471 查看
症状
当您跟踪链接在框架集中顶框架, 然后返回到启动位置, 页 onload 事件处理程序, 目标不触发。

解决方案
要解决此问题, 添加 onunload 事件处理程序。以便它将激发 (但不知道如何完成此操作) 这开启 onload 事件处理程序。

状态
Microsoft 已确认这是列出了本文 " 适用于 " 一节中 Microsoft 产品中存在错误。
方案1:
1.
frame.htm 和 test.htm 保存到 Web 服务器。

frame.htm
<html>

<frameset rows="*,*">

<frame src="test.htm">

</frameset>

</html>
test.htm
<HTML>

<HEAD>

<SCRIPT language='JavaScript'>

function testMessage()

{

alert("onload");

}

</SCRIPT>

</HEAD>

<BODY onload="testMessage()">

<a href="http://www.microsoft.com" target="_top">test</a><br>

</BODY>

</HTML>
2.
使用 Microsoft Internet Explorer Macintosh 查看 frame.htm。 将出现对话框框表示为框架 onload 事件处理程序已触发。

3.
单击链接以查看其他网页顶部框架中。
4.
单击 后退 按钮。 不触发 onload 事件处理程序。
5.
如果添加下列 onunload 事件处理程序, 不会发生此问题。
<BODY onload="testMessage()" onunload="">
方案2:

把OnLoad()事件修改,不用onload事件,随便用个事件名替换它,入Winload();
然后在框架代码的下方加入这个事件的调用即可;
如:
<HTML>
<HEAD>
<META
http-equiv="Content-Type"
content="text/html; charset=gb2312">
<SCRIPT
LANGUAGE=javascript>
<!--
//解决页面加载时无法进入onload的问题
function winOnload() {
alert(“替换Onload事件”);
}

//-->
</SCRIPT>
<TITLE>评分环境检测系统</TITLE>
</HEAD>
<BODY>
</TABLE><SCRIPT
LANGUAGE="JavaScript">
<!--
//从新处理设置的路径参数
document.getElementById("ifControl").src="about:Blank";
document.getElementById("ifSave").src="about:Blank";
document.getElementById("ifInfo").src="Post.asp"
//解决页面加载时无法进入onload的问题 winOnload();
//-->
</SCRIPT>
</BODY>
</HTML>

事实证明下面这种方法有时更有有效
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: