• onload事件-----addLoadEvent函数


      在给网页加一些特效时经常要在<body>中加入“onload”事件,即在网页加载完后执行某事件,例如:<body onload=”alert(‘欢迎光临!')”,但这样做有个大的缺陷,事件会在网页完全下载完后才会执行,包括网页中的图片或Flash等,如果网页中的图片比较大或有很多图,可能还没等网页完全下载完网友已经点击链接到其它网页去了,这样这个事件就没有执行了。另外在某些特殊情况下可能还修改不了网页的body参数。如在别人网站发表文章时,或用CMS整站系统时。 

      这时我们会想到用“window.onload”或“document.body.onload”来替换<body>中的onload事件,的确,问题解决了,但在加载多个onload事件时或控制加裁顺序时还会出现一些问题,直到我发现“Paul Koch”写的addLoadEvent()函数后,所有问题都解决了。如果大家一定要用“window.onload”或 “document.body.onload”来替换<body>中的onload事件,建议大家用前者,Firefox浏览器中无效,即兼容性有问题。

    function addLoadEvent( func ){
        var oldonload = window.onload;
        if(typeof window.onload != "function"){
            window.onload = func;
        }else{
            window.onload = function () {
                oldonload();
                func();
            };
        };
    };
    

     addLoadEvent函数主要是完成如下的操作: 

    1、把现有的window.onload事件处理函数的值存入到oldonload中。 

    2、如果在这个处理函数上还没有绑定任何函数,就将该函数添加给它。 

    3、如果在这个处理函数上已经绑定了一些函数,就把该函数追加到现有指定的末尾。

    调用方法:通过addLoadEvent函数,只需要调用该函数就可以进行绑定了。

    addLoadEvent(firestFunction); 
    addLoadEvent(secondFunction); 
    //或 
    addLoadEvent(function(){
        document.body.style.backgroundColor = 'yellow';
        firstFunction();
    }); 
    
  • 相关阅读:
    scp 一个最简单的Linux 数据copy
    ORA-65096: invalid common user or role 解决方法
    SQL Server 查询 数据库 & 表格 大小
    SQL Server 配置 Job 监控 tempdb 变化
    SQL Server 邮箱告警配置
    浅谈 SQL Server 中的等待类型(Wait Type)
    Oracle 常用命令大全(持续更新)
    连接Oracle 12c R2 报错ORA-28040:No matching authentication protocal
    Oracle 数据库启动和关闭
    SQL Server 日志收缩方法
  • 原文地址:https://www.cnblogs.com/beiz/p/5844994.html
Copyright © 2020-2023  润新知