zoukankan      html  css  js  c++  java
  • 函数的延迟加载

    //非延迟加载的函数,每次调用都会进行条件判断
    function removeHandler(target,eventType,handler) {
        if(target.removeEventListener) {
            target.removeEventListener(eventType,handler,false);
        }else {
            target.detachEvent("on"+eventType,handler);
        }
    }
    //延迟加载的函数,第一次调用后,会覆盖原来的老函数,以后再次调用的是新函数,不会再进行条件的判断,提升效率
    function addHandler(target,eventType,handler) {
        if(target.addEventListener) {
            addHandler = function(target,eventType,handler){
                target.addEventListener(eventType,handler,false);
            }
        }else{
            addHandler = function(target,eventType,handler){
                target.attachEvent("on"+eventType,handler);
            }
        }
        addHandler(target,eventType,handler);
    }
    //条件预加载
    //条件预加载确保所有函数调用时间相同。其代价是在脚本加载时进行检测。预加载适用于一个函数马上就会被用到,而且在整个页面生命周期中经常使用的场合。
    
    var addEventHandler = document.body.addEventListener ? function(target,eventType,handler) {
          target.addEventListener(eventType,handler,false);
    } : function(target,eventType,handler) {
          target.attachEvent("on"+eventType,handler);
    }
    
    
    
     
  • 相关阅读:
    java 多线程2
    java 多线程1
    java Object
    java 模板
    03015_JSTL技术
    运维人员常用的Linux命令总结
    oracle的userenv和nls_lang详解
    Oracle字符集检查和修改
    sql语句中(+)的作用
    Oracle事务Transaction
  • 原文地址:https://www.cnblogs.com/daxian2012/p/2720232.html
Copyright © 2011-2022 走看看