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);
    }
    
    
    
     
  • 相关阅读:
    【PHP】php基础回顾
    【PHP】MVC架构
    【OpenGL学习】使用VBO和FBO
    【OpenGL学习】使用Shader做图像处理
    hdu 杭电 1242 Rescue 果枫
    并查集模板 果枫
    数组结构体中排序 果枫
    hdu 杭电 1728 逃离迷宫 果枫
    hdu 杭电 1241 Oil Deposits 果枫
    hdu 杭电 2216 Game III 果枫
  • 原文地址:https://www.cnblogs.com/daxian2012/p/2720232.html
Copyright © 2011-2022 走看看