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

一般来说,我们判断 iframe 是否加载完成其实与判断JavaScript 文件是否加载完成采用的方法很类似:
JavaScript复制代码
  1. var iframe = document.createElement("iframe");   
  2. iframe.src = "http://www.planabc.net";   
  3. if (!/*@cc_on!@*/0) { //if not IE   
  4.     iframe.onload = function(){   
  5.         alert("Local iframe is now loaded.");   
  6.     };   
  7. else {   
  8.     iframe.onreadystatechange = function(){   
  9.         if (iframe.readyState == "complete"){   
  10.             alert("Local iframe is now loaded.");   
  11.         }   
  12.     };   
  13. }   
  14. document.body.appendChild(iframe);  
       最近, Nicholas C. Zakas 文章《Iframes, onload, and document.domain》的评论中 Christopher 提供了一个新的判断方法(很完美):
JavaScript复制代码
  1. var iframe = document.createElement("iframe");   
  2. iframe.src = http://www.planabc.net;   
  3. if (iframe.attachEvent){   
  4.     iframe.attachEvent("onload"function(){   
  5.         alert("Local iframe is now loaded.");   
  6.     });   
  7. else {   
  8.     iframe.onload = function(){   
  9.         alert("Local iframe is now loaded.");   
  10.     };   
  11. }   
  12. document.body.appendChild(iframe);  
几点补充说明:
1、IE 支持 iframe 的onload 事件,不过是隐形的,需要通过 attachEvent 来注册。
2、第二种方法比第一种方法更完美,因为 readystatechange 事件相对于 load 事件有一些潜在的问题。


上一篇:iframe自适应高度完美版解决DOM元素高度变化问题

下一篇:dnt 3.0中直接用SQL创建用户

留下脚印压缩包密码:sosuo8
名字:
全部评论:
申明:本站部分文章来自网络,由于各种原因对文章的来源无从考究,如果您是“ 判断 iframe 是否加载完成的完美方法 ”的原作者,若侵犯您的版权,请与我联系!在此请您原谅我的幼稚和无知!联系方法:email:ahuinan@21cn.com  QQ:106494262

感谢以下网友对网站提出的建议:
1、感谢“蓝树叶kiss”网友发现一个评论漏洞。(2009-2-28)
2、感谢“陈臣”对程序优化和seo方面的建议。(2009-3-18)
文章档案
  • 作者:怿飞
  • 来源:怿飞's blog
  • 日期:2009-9-26 13:24:00
  • 点击:736
网友投票(您觉得这篇文章怎样?)
loadding...请稍侯......