转 在jQuery 1.6.1中什么构成属性(Attribute)或属性(Property)
jQuery 1.6.1 RC1今天已经发布,帮助解决.Attr()向后兼容的问题连同其他一些修正。
jQuery.com发布一个不错的图表,.attr()和.prop()应该被用于今后的jQuery 1.6+。
我想我公布这个供以后参考。请注意,所有的属性仍然可以通过1.6.1访问,但不一定能通过1.6。
据jQuery.com说.prop()方法应该被用于布尔属性(Attribute)/属性(Property)和在HTML中不存在的属性(如window.location的)。全部的其他属性(那些你可以在HTML中看到的)可以而且应该继续使用.attr()方法控制。
jQuery.com发布一个不错的图表,.attr()和.prop()应该被用于今后的jQuery 1.6+。
我想我公布这个供以后参考。请注意,所有的属性仍然可以通过1.6.1访问,但不一定能通过1.6。
据jQuery.com说.prop()方法应该被用于布尔属性(Attribute)/属性(Property)和在HTML中不存在的属性(如window.location的)。全部的其他属性(那些你可以在HTML中看到的)可以而且应该继续使用.attr()方法控制。
| ATTRIBUTE | PROPERTY | 
| accesskey | async | 
| align | autofocus | 
| class | checked | 
| contenteditable | location | 
| draggable | multiple | 
| href | readOnly | 
| id | selected | 
| label | |
| rel | |
| src | |
| tabindex | |
| title | |
| type | |
| width | 
jQuery 1.6刚刚发布了,有几处性能和跨浏览器兼容性的改进,专门重写了属性模块。
新版本中的部分重要改进:
- 
在attr()方法中支持Boolean属性;
- 
添加了钩子函数,允许对attr()和val()方法进行扩展;
- 
map()方法添加了对对象的支持(将JavaScript对象的属性映射到函数)
- 
允许使用相对值(“+=”,“-=”)更新CSS;
- 
添加了deferred.always(), deferred.pipe()方法,减少了代码量,提高了代码易读性;
- 
同步动画 – 现在所有动画都同步到相同的时间间隔. 使用新的浏览器功能,动画也更顺畅;
所有这些新特性连同整个bug修复列表在官方博文中都有详细说明。
不幸的是,其中包含了部分破坏性的变更,团队已经在官方更新中用单独的章节强调了它们:
| 变更 | jQuery 1.5.2 示例 | jQuery 1.6 示例 | 
| data()方法使用破折号创建驼峰格式。 | data-max-value="15" 创建{ max-value: 15 } | data-max-value="15" 创建{ maxValue: 15 } | 
| 区分了Property与Attribute。attr()方法现在不能用于获取preperty的值。为了处理property的值,引入了prop()和removeProp()方法。 | 如果复选框被选中,checkbox.attr("checked")返回(true) | checkbox.attr("checked")返回空字符串。 要判别是否选中,需在事件处理程序中使用 $(this).prop("checked")或 $(this).is(":checked")。 | 
 
                    
                     
                    
                 
                    
                 
 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号