新版本中的部分重要改進:
-
attr()、val()和data()方法有了更好的性能;
-
在attr()方法中支持Boolean屬性;
-
添加了鉤子函數,允許對attr()和val()方法進行擴展;
-
map()方法添加了對對象的支持(將JavaScript對象的屬性映射到函數)
-
允許使用相對值(“+=”,“-=”)更新CSS;
-
添加了deferred.always(), deferred.pipe()方法,減少了代碼量,提高了代碼易讀性;
-
同步動畫 – 現在所有動畫都同步到相同的時間間隔. 使用新的浏覽器功能,動畫也更順暢;
-
find(),closest()和is()可接收所有的DOM元素和JQuery對象作為參數。
所有這些新特性連同整個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")。
不出意外的話,第二項變更將會影響到現有打算升級到1.6的那些項目。
這一版本是在1.5發布後3個月及1.5.2發布後1個月推出的。目前1.7的工作已經開始了,JQuery團隊已經接受了功能建議書。
JQuery是一個用於快速Web開發的JavaScript庫,它簡化了HTML文檔遍歷、事件處理、動畫以及Ajax交互。