zoukankan      html  css  js  c++  java
  • window/body/img/iframe 的onload事件

      在html页面中,只有body,img,iframe这一类标签具有onload事件。

        onload事件表示在当前元素载入完成后发生的事件。其中,window也有onload事件,但是跟body的是同一事件,如果页面上对两者都定义了该事件,只会响应一个。

        iframe上的事件在ie6下有一些bug:

        1.iframe的onload事件跟window.onload事件只能二者取其一,似乎ie把它看作同一个事件了!例如:

    window.onload=function(){
    
        alert("window loaded");
    
    }
    
    var oIframe = document.getElementById("iframe");
    
    oIframe .onload=function(){
    
        alert("iframe loaded");
    
    }

        这段代码只能响应iframe的事件,如果window.onload事件定义在后则只响应window的onload事件!

        但是如果在iframe标签中定义响应方法则不会发生这种情况:

    <iframe src=child.html" onload="alert('iframe loaded')"></iframe>

      这样的代码则能正确执行,window和iframe的onload事件均能正常响应。

      用addEventListener的方式绑定的iframe事件也可以正常运行

         如果是在js中定义的iframe的onload事件,则只有在iframe第一次加载时响应,以后更改iframe的src加载别的页面时都不会再响应了。

      这似乎证明了在js中定义iframe的onload事件实际上定义的是window的onload事件,这样才能解释为何window的事件被覆盖了,

    并且只响应一次,因为window确实只加载一次。在Firefox和Chrome中则没有这个问题。

  • 相关阅读:
    Documentum常见问题1—Tomcat应用内存溢出
    Documentum常见问题3—保存搜索Saved Searches提示用户对文件柜无权限
    Request.QueryString[]和Request[]的区别
    将money转换成大写汉字
    Windows API(一) 什么是Windows API
    C#将数据导出到Excel汇总
    开始—运行—命令
    手动绘制DataTable
    触发器Deleted表和Inserted表
    功能强大的Regsvr32命令
  • 原文地址:https://www.cnblogs.com/liaojie970/p/5627647.html
Copyright © 2011-2022 走看看