06 2011 档案

读jQuery之十(事件模块概述)
摘要:jQuery的事件模块是较复杂的,前面仅仅提到了对事件对象的包装。即统一了一些兼容性的问题。这篇会综述下jQuery的整个事件模块。后面会详细分析jQuery.event.add/jQuery.event.remove/jQuery.event.trigger。虽然事件模块代码很难读,但其提供的AP... 阅读全文

posted @ 2011-06-27 15:36 snandy 阅读(3958) 评论(2) 推荐(6) 编辑

读jQuery之九(一些瑕疵)
摘要:jQuery1.6.1 发布有一段时间了,发现一些冗余代码,列出如下1,bind 方法,最后一个参数fn是多余的// Handle object literalsif ( typeof type === "object" ) { for ( var key in type ) { this[ name ](key, data, type[key], fn); } return this;}2,注释// Add which for click: 1 === left; 2 === middle; 3 === right应修改为// Add which for mousedow 阅读全文

posted @ 2011-06-20 09:28 snandy 阅读(3493) 评论(6) 推荐(5) 编辑

JavaScript判断变量是否为undefined两种方式差异
摘要:我们经常需要判断某个变量/属性是否为undefined。通常有两种写法// 方式1typeof age === 'undefined';// 方式2age === undefined这两种写法有什么区别吗? 应该使用哪一种呢?看看下面的例子typeof age === 'undefined'; //... 阅读全文

posted @ 2011-06-17 14:32 snandy 阅读(47912) 评论(12) 推荐(7) 编辑

读jQuery之八(包装事件对象)
摘要:由于各个浏览器中原生事件对象的 差异性 ,多数 JS库/框架 都或多或少的对原生事件对象进行了修复及包装。 比如,停止事件冒泡IE用 cancelBubble ,标准浏览器则用 stopPropagation 。 获取事件源对象,IE用 srcElement ,标准浏览器则用 target 诸如此... 阅读全文

posted @ 2011-06-17 06:58 snandy 阅读(5049) 评论(2) 推荐(2) 编辑

读jQuery之七(判断点击了鼠标哪个键)
摘要:jQuery丢弃了标准的 button 属性采用 which,这有点让人费解。which 是Firefox引入的,IE不支持。which的本意是获取键盘的键值(keyCode)。 jQuery中的which即可以是键盘的键值,也可以是鼠标的键值。 即当判断用户按下键盘的哪个键时可以使用which,当判断用户按下鼠标的哪个键时也可以用which。它一举两用了。源码// Add which for key eventsif ( event.which == null && (event.charCode != null || event.keyCode != null) ) { e 阅读全文

posted @ 2011-06-15 11:22 snandy 阅读(8105) 评论(4) 推荐(3) 编辑

读jQuery之六(缓存数据)
摘要:很多同学在项目中都喜欢将数据存储在HTMLElement属性上,如Test给页面中div添加了自定义属性“data”及值“some data”。后续JS代码中使用getAttribute获取。jQuery从1.2.3开始提供了data/removeData方法用来存储/删除数据。1.6.1代码片段j... 阅读全文

posted @ 2011-06-10 09:58 snandy 阅读(38543) 评论(9) 推荐(18) 编辑

读jQuery之五(取DOM元素)
摘要:使用过Prototype.js的同学知道(xx)HTMLElementjQuery调用后想要获取DOM元素可以使用get方法,如下// 方式1(div).get(1);//div使//2('div')[1]... 阅读全文

posted @ 2011-06-08 09:04 snandy 阅读(8413) 评论(5) 推荐(9) 编辑

对象无length属性时IE6/7中无法将其转换成伪数组(ArrayLike)
摘要:有时需要将数组转成伪数组(ArrayLike),如下var ary = ['one','two','three'];var obj = {}; // 没有length属性Array.prototype.push.apply(obj, ary);for(var i in obj){ alert(i + ': ' + obj[i]);}IE8/9/Firefox/Safari/Chrome 依次弹出了obj的key及其value。即能转换成ArrayLike。但IE6/7下则不能,没有输出任何信息表明obj仍然是个空对象。如果给obj 阅读全文

posted @ 2011-06-08 07:37 snandy 阅读(2250) 评论(1) 推荐(1) 编辑

读jQuery之四(优雅的迭代)
摘要:前面提到jQuery库如何通过其中的jQuery.extend及jQuery.fn.extend去扩展自身的。第三篇给zChain.js添加了常用选择器,但目前为止zChain.js仍然做不了任何事情。jQuery的操作往往是分两步1,获取元素集合(选择器)2,操作元素集合而第二步操作元素集合的主要... 阅读全文

posted @ 2011-06-07 08:17 snandy 阅读(7171) 评论(3) 推荐(6) 编辑

读jQuery之三(构建选择器)
摘要:前面两篇已经道明了jQuery的核心框架。弄清楚了jQuery对象的组成,以及如何用extend方法来扩展库。链式操作 也仅仅是方法体内返回this。为了叙述每一篇的重点,其示例代码都是最精简的,比如选择器只能传HTMLElement和id。这篇我们增强下选择器,依据2/8原则,这里仅实现最常用的几... 阅读全文

posted @ 2011-06-06 06:57 snandy 阅读(3422) 评论(1) 推荐(4) 编辑

读jQuery之二(两种扩展)
摘要:上一篇分析了jQuery对象的组成,这篇分析下它的extend方法。如下jQuery.extend = jQuery.fn.extend = function() { ...};我们可以用.extendvarmyself=name:jack;.extend... 阅读全文

posted @ 2011-06-03 15:14 snandy 阅读(14409) 评论(7) 推荐(11) 编辑

读jQuery之一(对象的组成)
摘要:首次接触jQuery是在2008年,上地的一家小公司。当时的版本是1.1,在此之前我仅接触过Prototype.js。对于jQuery的写法甚是困惑,尤其在使用Prototype的jQuery。对于现在前端同学来说,可能第一个接触的就是jQuery了,他们会觉得很习惯,很自然。... 阅读全文

posted @ 2011-06-03 08:44 snandy 阅读(14045) 评论(19) 推荐(23) 编辑

Firefox/Opera不支持onselectstart事件
摘要:如下<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>Firefox/Opera不支持onselectstart事件</title> </head> <body> <div id="d1" style="width:200px;height:200px;background:gold;">Text Text</div> <script type 阅读全文

posted @ 2011-06-01 18:36 snandy 阅读(5242) 评论(1) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示