`

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

阅读更多
转载:判断iframe是否加载完成的完美方法
http://goalercn.com/article/article.php?id=4101
一般来说,我们判断 iframe 是否加载完成其实与 判断 JavaScript 文件是否加载完成 采用的方法很类似:
var iframe = document.createElement("iframe");
iframe.src = http://www.goalercn.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 = "http://www.goalercn.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);

几点补充说明:
1. IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。
2. 第二种方法比第一种方法更完美,因为 readystatechange 事件相对于 load 事件有一些潜在的问题。
分享到:
评论

相关推荐

    js下判断 iframe 是否加载完成的完美方法.docx

    判断 iframe 是否加载完成是一个重要的步骤,在我们的开发中,我们可以使用以上三种方法来判断 iframe 是否加载完成。其中,方法一和方法二都是通用的方法,可以在多数浏览器中使用,而方法三则是 IE 浏览器特有的...

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

    这种方法兼顾了兼容性和可靠性,是判断iframe加载完成的一个很好的选择。 总结来说,判断iframe是否加载完成主要有以下几种方式: 1. 对于非IE浏览器,直接使用`onload`事件。 2. 对于IE浏览器,使用`attachEvent`...

    js检测iframe是否加载完成的方法

    需要注意的是,这种方法并不完美,因为它依赖于预期内容的出现来判断加载完成,而某些情况下,如动态加载的内容或者JavaScript延迟执行的情况,这种方法可能无法准确判断。另外,对于同源策略限制,跨域的iframe可能...

    ios 不支持 iframe 的完美解决方法(兼容iOS&安卓)

    标题所提及的“ios 不支持 iframe 的完美解决方法(兼容iOS&安卓)”主要针对的是iOS系统中`iframe`高度计算和弹框定位的问题。在iOS中,当`iframe`内的子页面高度超过父页面时,若子页面触发弹框,弹框可能会出现在...

    IE iframe的onload方法分析小结

    判断iframe是否加载完成的完美方法IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。 第二种方法比第一种方法更完美(采用readystatechange判断),因为 readystatechange 事件相对于 load...

    JavaScript 处理Iframe自适应高度(同或不同域名下)

    函数内部首先判断浏览器是否支持所需的方法,如果支持,则通过obj.contentDocument.body.offsetHeight获取到Iframe内部内容的实际高度,并将这个高度值赋给obj的高度属性。这种做法的前提是两个页面在同一域名下,...

    完美解决JS文件页面加载时的阻塞问题

    - 在事件处理器中,根据readyState和status判断请求是否成功,并执行相应的函数来处理返回的数据。 2. iframe注入: iframe注入是指在一个iframe元素中加载JavaScript代码,由于iframe的加载不会影响主页面的渲染...

    KODExplorer 芒果云-资源管理器

    - iframe 打开url 优化。解决canvas问题 - 文件编辑器,载入loading去掉 - 删除错误时,或上传错误时也刷新目录。删除提示颜色错误 - 对话框右键 点击右键菜单隐藏修复 - 手机端 touch =双击 - 文件列表 ...

    百度收藏夹(ASP仿腾讯微博) v2.9.rar

    31、完美解决发表新广播时不刷新页面,并且say.asp不预先加载,加快浏览速度。 32、修改删除广播时,直接在本页面内操作,而不是弹出新页面操作。 33、修改即时对话信息为无刷新HTML JS形式。 34、修改对话网址为...

Global site tag (gtag.js) - Google Analytics