判断iframe是否加载完成的完美方法


Posted in Javascript onJanuary 07, 2010
var iframe = document.createElement("iframe"); 
iframe.src = "https://3water.com"; if (!/*@cc_on!@*/0) { //if not IE 
iframe.onload = function(){ 
alert("Local iframe is now loaded."); 
}; 
} else { 
iframe.onreadystatechange = function(){ 
if (iframe.readyState == "complete"){ 
alert("Local iframe is now loaded."); 
} 
}; 
} 
document.body.appendChild(iframe);

最近, Nicholas C. Zakas 文章《Iframes, onload, and document.domain》的评论中 Christopher 提供了一个新的判断方法(很完美):

var iframe = document.createElement("iframe"); 
iframe.src = "https://3water.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);

几点补充说明:

IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。
第二种方法比第一种方法更完美,因为 readystatechange 事件相对于 load 事件有一些潜在的问题。

Javascript 相关文章推荐
TFDN图片播放器 不错自动播放
Oct 03 Javascript
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
Jan 29 Javascript
ie下动态加态js文件的方法
Sep 13 Javascript
Firefox中beforeunload事件的实现缺陷浅析
May 03 Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
May 07 Javascript
jQuery实现带动画效果的二级下拉导航方法
Mar 11 Javascript
关于function类中定义变量this的简单说明
May 28 Javascript
JavaScript的setter与getter方法
Nov 29 Javascript
vue-cli3搭建项目的详细步骤
Dec 05 Javascript
vue组件间的参数传递实例详解
Apr 26 Javascript
vue通过接口直接下载java生成好的Excel表格案例
Oct 26 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 04 Javascript
Extjs学习笔记之五 一个小细节renderTo和applyTo的区别
Jan 07 #Javascript
EXT中xtype的含义分析
Jan 07 #Javascript
Extjs学习笔记之四 工具栏和菜单
Jan 07 #Javascript
Extjs学习笔记之三 extjs form更多的表单项
Jan 07 #Javascript
Extjs学习笔记之二 初识Extjs之Form
Jan 07 #Javascript
Extjs学习笔记之一 初识Extjs之MessageBox
Jan 07 #Javascript
jQuery DOM操作小结与实例
Jan 07 #Javascript
You might like
jQuery之$(document).ready()使用介绍
2012/04/05 Javascript
Javascript中自动切换焦点实现代码
2012/12/15 Javascript
jQuery之排序组件的深入解析
2013/06/19 Javascript
js报$ is not a function 的问题的解决方法
2014/01/20 Javascript
使用jquery中height()方法获取各种高度大全
2014/04/02 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
JS非Alert实现网页右下角“未读信息”效果弹窗
2015/09/26 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
JS实现的跨浏览器解析XML文件实例
2016/06/21 Javascript
使用JavaScript获取Request中参数的值方法
2016/09/27 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
详解Vue调用手机相机和相册以及上传
2019/05/05 Javascript
python线程锁(thread)学习示例
2013/12/04 Python
python实现分析apache和nginx日志文件并输出访客ip列表的方法
2015/04/04 Python
创建pycharm的自定义python模板方法
2018/05/23 Python
Python实现的爬虫刷回复功能示例
2018/06/07 Python
Python不同目录间进行模块调用的实现方法
2019/01/29 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
python wsgiref源码解析
2021/02/06 Python
css3气泡 css3关键帧动画创建的动态通知气泡
2013/02/26 HTML / CSS
Css3新特性应用之形状总结
2016/12/08 HTML / CSS
GEOX鞋美国官方网站:意大利会呼吸的鞋
2017/07/12 全球购物
美国婴儿用品店:Babies”R”Us
2017/10/12 全球购物
Asics日本官网:鬼冢八喜郎创立的跑鞋运动品牌
2017/10/18 全球购物
欧洲最大的品牌水上运动服装和设备在线零售商:Wuituit Outlet
2018/05/05 全球购物
.NET remoting中对象激活的两种方式
2015/06/08 面试题
优秀企业获奖感言
2014/02/01 职场文书
《兰亭集序》教学反思
2014/02/11 职场文书
美化环境标语
2014/06/20 职场文书
综治维稳工作承诺书
2014/08/30 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
2016年会开场白台词
2015/06/01 职场文书
环保建议书作文500字
2015/09/14 职场文书
2016年小学植树节活动总结
2016/03/16 职场文书
雄兵连:第三季先行图公开,天使恶魔联合,银河之力的新力量
2021/06/11 国漫