当前位置: 首页 > 图文教程 > 网络编程 > Javascript > IE iframe的onload方法分析小结

Javascript
我也种棵OO树JXTree[js+css+xml]
新浪中用来显示flash的函数
JXTree对象,读取外部xml文件数据,生成树的函数
用js来格式化字符串示例模仿css
js prototype 格式化数字 By shawl.qiu
新浪刚打开页面出来的全屏广告代码
记录几个javascript有关的小细节
Some tips of wmi scripting in jscript (1)
JavaScript Try...Catch 声明的 使用方法
JS版获取字符串真实长度和取固定长度的字符串函数
Javascript中的数学函数
ArrayList类(增强版)
javascript中巧用“闭包”实现程序的暂停执行功能
javascript判断单选框或复选框是否选中方法集锦
FireFox的getYear的注意事项
JavaScript For...In 使用方法
JavaScript Switch 声明
JavaScript If...Else 声明
JavaScript For 循环
JavaScript While 循环 教程

Javascript 中的 IE iframe的onload方法分析小结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 375 ::
收藏到网摘: n/a

在判断 iframe 是否加载完成的完美方法一文中,怿飞最后有如下两点补充。 判断iframe是否加载完成的完美方法
IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。
第二种方法比第一种方法更完美(采用readystatechange判断),因为 readystatechange 事件相对于 load 事件有一些潜在的问题。
这里感觉说的并不是完全准确,开始给我造成了很大的困扰。看其代码才明白,真正意义上来讲IE在创建一个新的iframe时的onload方法需要使用attachEvent来绑定,而原来就存在的iframe的onload方法,则可以直接绑定。
说的有些乱,大家看代码,一看便知:
复制代码 代码如下:

<iframe id='google'></iframe>
<script type='text/javascript'>
document.getElementById('google').src='http://ruanchen.com/'google').onload = function(){
alert ('I am google frame, now loaded');
}
</script>

在这里,也把原文提到的”判断 iframe 是否加载完成的完美方法”原文摘录至此
复制代码 代码如下:

var iframe = document.createElement("iframe");
iframe.src = "http://www.ruanchen.com";
if (iframe.attachEvent){
iframe.attachEvent("onload", function(){
alert("Local iframe is now loaded.");
});
} else {
iframe.onload = function(){
alert("Local iframe is now loaded.");
};
}
document.body.appendChild(iframe);