javascript学习——浏览器嗅探优化技术

思路一:延时加载

在使用的时候再判断该用哪个方法,并且在判断完了之后改写函数。之后再调用的时候,可以按照检测之后得结果进行操作。

var addHandler = function(target,eventType,handle){
   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 addHandler = document.body.addEventListener ? function(target,eventType,handler){target.addEventListener(eventType,handler,false);} 
: function(target,eventType,handler){target.attachEvent('on'+eventType,handler);};

适用于一个函数马上就要用到,并且在页面的整个生命周期频繁使用的场合。

猜你喜欢

转载自blog.csdn.net/u013237862/article/details/54375373