jQuery 2.2 和 1.12 新版本發布
本文編譯自官方博客,不是照字翻譯。
新年新氣象,jQuery 團隊于昨日發布了兩個新版本:1.12 和 2.2。這兩個版本都包含了大量的Bug修正和功能改進。基本上這會是3.0之前最后一次發布。不過由于3.0不做向下兼容,所以屆時 jQuery 團隊仍然會繼續維護這兩個版本,當然肯定只做Bug修正。關于3.0的消息將在不久之后公布。
那么新版本都有些什么變化呢?
性能提升
此版本縮短了 Sizzle 的引用路徑,這樣當原生querySelectorAll和matchesSelector無法使用時,可以帶來性能提升。在生產環境中效果明顯。
新功能
小升級很多,這里只揀要緊的說。
SVG 的類操作
作為 HTML 庫,支持 SVG 元素是理所應當的。新版本里大家就可以使用.addClass()、.removeClass()、.toggleClass()、.hasClass()操作 SVG 對象的class了。不過需要注意的是,因為 SVG 和 HTML 還是有很多不同,所以如果真的要進行復雜操作,還是選用其它更專業的類庫比較好。
jQuery.post 和 jQuery.get 支持對象參數
如題:
jQuery.post({ url: “/example” });
這樣一來好處還比較多,比如設置回調函數的context,或者跨域 post 時可以withCredential: true。
新運算符支持
支持 ES6/ES2015 引入的新運算符, jQuery 對象可以用for-of遍歷了。
for (element of $elements) { console.log(element); }
jQuery.htmlPrefilter()
HTML5不要求標簽必須閉合,但是XML要求。這個函數就是用來作轉換的。這樣我們使用.html()、.append()、.replaceWith()時就不需要人工轉換了。進而,我們也就不需要那么嚴格的校驗輸入了。
jQuery.uniqueSort()
jQuery.unique()命名有點問題,沒能體現排序,所以這次改名為jQuery.uniqueSort()。jQuery.unique()仍然保留,不過文檔中將只記錄后者。
這個函數專注于 DOM 節點的排序和排重,請勿亂用。
總結
這個版本理論上沒有太大變化,可以平滑升級。不過如果誰還是臉黑遇到什么問題,也請匯報給官方。
具體變化
就不一一翻譯了,想了解的可以看原文:jQuery 2.2 and 1.12 Released
同時發布在我的博客:jQuery 2.2 和 1.12 新版本發布
來自: http://segmentfault.com/a/1190000004278929