IE IE8 iframe的onload方法分析 IE浏览器onload事件失效

时间:2023-01-17 14:40:19

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

    IE 支持 iframe 的 onload 事件,不过是隐形的,需要通过 attachEvent 来注册。

    第二种方法比第一种方法更完美(采用readystatechange判断),因为 readystatechange 事件相对于 load 事件有一些潜在的问题。

    这里感觉说的并不是完全准确,开始给我造成了很大的困扰。看其代码才明白,真正意义上来讲IE在创建一个新的iframe时的onload方法需要使用attachEvent来绑定,而原来就存在的iframe的onload方法,则可以直接绑定。

    

     在这里,也把原文提到的”判断 iframe 是否加载完成的完美方法”

    

 1 var iframe = document_createElement_x_x("iframe");
 2 
 3     iframe.src = "http://www.020cityshop.com";
 4 
 5     if (iframe.attachEvent){
 6 
 7     iframe.attachEvent("onload", function(){
 8 
 9     alert("Local iframe is now loaded.");
10 
11     });
12 
13     } else {
14 
15     iframe.onload = function(){
16 
17     alert("Local iframe is now loaded.");
18 
19     };
20 
21     }
22 
23     document.body.a(iframe);