由于各个浏览器的兼容问题,在写脚本的时候经常会为了兼容多个浏览器而写多个分支。
判断浏览器的方法一种是使用userAgent,一种是使用特性判断,这里以特性判断为例。
例如:
function addEvent(obj, type, func){
if(document.addEventListener){
obj.addEventListener(type, func, false);
}else if(document.attachEvent){
obj.attachEvent('on' + type, func);
}
}
这种方法使用判断document特性来判断应该使用哪种方法进行事件绑定。
这样我们在给某个dom添加属性的时候可能就会这样调用:
addEvent($('div1'), 'click', func);
问题就在这里。我们在做拖动效果的时候,会不断的绑定和解绑mousemove方法,这样我们每绑定一次程序就会判断一次。有没有方法只进行一次判断呢?
当然有的:
if(document.addEventListener){
var addEvent = function (obj, type, func){
obj.addEventListener(type, func, false);
}
}else if(document.attachEvent){
var addEvent = function (obj, type, func){
obj.attachEvent('on' + type, func);
}
}
这样我们在初始化的时候就声明了方法,总共只有一个分支,以后调用addEvent的时候便不会有分支了。
分享到:
相关推荐
JavaScript设计模式.pdf
《JavaScript设计模式》是JavaScript设计模式的学习指南。全书分为14章。首先介绍了什么是模式、模式的结构、类别、模式的分类、如何编写模式等等;然后,集中介绍了很多流行的设计模式在JavaScript中的应用,包括...
javascript高级-javascript设计模式。视频文件(无加密可在线观看)
JavaScript设计模式与开发实践.pdf
在吃透了前面所说的书之后,接下来两本书的顺序已经无关紧要了,《JavaScript DOM高级程序设计》(注意和《JavaScript 高级程序设计》相区别)和《JavaScript设计模式》,这两本都是重量级的书,能让你的JS技术上一...
JavaScript 设计模式(高清扫描版本)- 张容铭
作者针对常见的开发任务,从YUI等实战代码中取材,提供了专家级的解决方案,不仅透彻剖析了JavaScript扣的面向对象编程,而且深入探讨了如何用JavaScript实现以前只在服务器端应用的设计模式,如何根据实际场景选择...
外文翻译:学用JavaScript设计模式
JavaScript设计模式+JavaScript模式+JavaScript异步编程,合计三本pdf文件,5分超值哦。
为了帮助大家快速和较好地理解JavaScript设计模式中的单例模式,本文对JavaScript的单例模式进行了分析并进行简易的代码演示,希望本文能够给有需要的人带来一点小小的帮助。
本书在尊重《设计模式》原意的同时,针对JavaScript语言特性全面介绍了更适合JavaScript程序员的了16个常用的设计模式,讲解了JavaScript面向对象和函数式编程方面的基础知识,介绍了面向对象的设计原则及其在设计...
Javascript 设计模式之构造函数模式.zip
深入讲解Javascript开发原理以及Javascript客户端脚本开发的设计模式,看完该书可以拓展WEB开发人员的Javascript开发的思路。
外文翻译:学用JavaScript设计模式,pdf版本,中文版 设计模式是可重用的用于解决软件设计中一般问题的方案。设计模式如此让人着迷,以至在任何编程语言中都有对其进行的探索。 其中一个原因是它可以让我们站在巨人...
和张容铭的javascript设计模式相比,个人觉得有以下不同之处: 1、需要对原型链和闭包有一定的基础 2、案例比较经典并且通熟易懂,讲解特别清晰 3、知识点的归纳总结也比较突出重点,方便二次学习以及做笔记 字体...
Javascript 设计模式 很经典 第一本 Javascript 设计模式 很经典 第一本 Javascript 设计模式 很经典 第一本
JAVASCRIPT设计模式[收集].pdf
JavaScript 设计模式之策略模式.zip