转-IE iframe的onload方法

转自:http://www.xiaoxiaozi.com/2010/01/05/1683/

 

判断 iframe 是否加载完成的完美方法一文中,怿飞最后有如下两点补充:

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

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

说的有些乱,大家看代码,一看便知:

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

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

var iframe  = document. createElement ( "iframe" ) ;
iframe. src  =  "http://www.planabc.net" ;

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

转载于:https://www.cnblogs.com/chyong168/archive/2012/06/25/2561593.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值