JavaScript设计模式与开发实践:惰性函数
2024-10-11 11:16:57
Web开发中,因为浏览器之间的差异实现差异,一些嗅探工作总是不可避免的,比如我们需要在各个浏览器中能够通用事件绑定函数addEvent
//一般写法
//缺点:当他每次被调用的时候都都会执行里面的if条件,
var addEvent = function(elem, type, handler){
if(window.addEventLister){
return elem.addEventListener(type, handler, false);
}
if(window.attachEvent){
return elem.attachEvent('on'+type, handler);
}
} //改进 var addEvent = (function(){
if(window.addEventListener){
return function(elem, type, handler){
elem.addEventListener(type, handler, false);
}
}
if(window.attachEvent){
return function(elem, type, handler){
elem.atttachEvent('on'+handler);
}
}
})(); //惰性载入方案 var addEvent = function(elem, type, handler){
if(window.addEventListener){
addEvent = function(elem, type, handler){
elem.addEventListener(type, handler, false);
}
} else if(window.atttachEvent){
addEvent = function(elem, type, handler){
elem.atttachEvent('on'+type, handler);
}
} addEvent(elem, type, handler);
};
最新文章
- ★Kali信息收集~ 5.The Harvester:邮箱挖掘器
- LNMP环境magento常见错误
- 创建数据库和表相关的SQL语句
- Snabbt.js – 极简的 JavaScript 动画库
- RMQ(ST算法)
- win7或win2008 R2 被远程登录日志记录 系统日志
- ASP.NET MVC controller 之间传JS值
- 李洪强漫谈iOS开发[C语言-006]-程序的描述方式
- (转)RabbitMQ消息队列(四):分发到多Consumer(Publish/Subscribe)
- 弹性布局-flex
- OpenCV(6)-腐蚀和膨胀
- css3圆角讲解
- PHP 获取linux服务器性能CPU、内存、硬盘、进程等使用率
- 关于android中postDelayed方法的讲解
- 蓝桥网试题 java 入门训练 Fibonacci数列
- 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10的100次幂。 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。 输入样例: 1234567890987654321123456789 输出样例: yi san wu
- MySQL学习笔记(六):索引
- 【集美大学1411_助教博客】团队作业1——团队展示&;选题 成绩
- whereis、which、find的区别
- 程序员常用字体(vs2008字体修改方案)