js函数的延迟加载实现代码


Posted in Javascript onOctober 11, 2012
//非延迟加载的函数,每次调用都会进行条件判断 
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); 
}
Javascript 相关文章推荐
Javascript 类与静态类的实现(续)
Apr 02 Javascript
javascript 快速排序函数代码
May 30 Javascript
快速使用Bootstrap搭建传送带
May 06 Javascript
探究JavaScript中的五种事件处理程序方式
Dec 07 Javascript
vue实现表格增删改查效果的实例代码
Jul 18 Javascript
vue中echarts3.0自适应的方法
Feb 26 Javascript
JavaScript实现一个简易的计算器实例代码
May 10 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
May 28 Javascript
微信小程序自定义组件的实现方法及自定义组件与页面间的数据传递问题
Oct 09 Javascript
详解在HTTPS 项目中使用百度地图 API
Apr 26 Javascript
javascript操作向表格中动态加载数据
Aug 27 Javascript
vue+Element-ui实现分页效果
Nov 15 Javascript
javascript中方便增删改cookie的一个类
Oct 11 #Javascript
js事件(Event)知识整理
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
Oct 11 #Javascript
JavaScript高级程序设计(第3版)学习笔记9 js函数(下)
Oct 11 #Javascript
You might like
phpfans留言版用到的install.php
2007/01/04 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
2013/07/02 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
2017/11/10 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
2019/07/15 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
Thinkphp 框架扩展之标签库驱动原理与用法分析
2020/04/23 PHP
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
如何让DIV可编辑、可拖动示例代码
2013/09/18 Javascript
js实现获取焦点后光标在字符串后
2014/09/17 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
JavaScript File API文件上传预览
2016/02/02 Javascript
深入理解JavaScript单体内置对象
2016/06/06 Javascript
jquery实现自定义图片裁剪功能【推荐】
2017/03/08 Javascript
JS中使用media实现响应式布局
2017/08/04 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
2018/09/28 Javascript
JavaScript函数定义方法实例详解
2019/03/05 Javascript
Python爬取国外天气预报网站的方法
2015/07/10 Python
python实现unicode转中文及转换默认编码的方法
2017/04/29 Python
python进程管理工具supervisor的安装与使用教程
2017/09/05 Python
Python探索之ModelForm代码详解
2017/10/26 Python
浅谈python迭代器
2017/11/08 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
python区分不同数据类型的方法
2019/10/14 Python
tensorflow实现残差网络方式(mnist数据集)
2020/05/26 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
学python最电脑配置有要求么
2020/07/05 Python
生物化工工艺专业应届生求职信
2013/10/08 职场文书
公安局副政委班子个人对照检查材料
2014/10/04 职场文书
小学语文复习计划
2015/01/19 职场文书
超市采购员岗位职责
2015/04/07 职场文书
开学第一周值周总结
2015/07/16 职场文书
决心书格式及范文
2019/06/24 职场文书
javascript对象3个属性特征
2021/11/17 Javascript
Matplotlib绘制条形图的方法你知道吗
2022/03/21 Python
Vue 打包后相对路径的引用问题
2022/06/05 Vue.js