jQuery 3.0十大新特性最終版發(fā)布
來源:易賢網(wǎng) 閱讀:703 次 日期:2016-07-27 15:13:55
溫馨提示:易賢網(wǎng)小編為您整理了“jQuery 3.0十大新特性最終版發(fā)布”,方便廣大網(wǎng)友查閱!

這篇文章主要介紹了由淺入深剖析Angular表單驗(yàn)證 的相關(guān)資料,需要的朋友可以參考下

jQuery 3.0 最終版發(fā)布了。jQuery 3.0將是jQuery的未來。但如果你需要IE6-8支持,您可以繼續(xù)使用最新版本1.12。

jQuery 3.0在日前發(fā)布了最終的全新版本。從2014年10月,jQuery團(tuán)隊對這個主要大版本進(jìn)行維護(hù)開始,web開發(fā)者社區(qū)便一直在期待著這一刻的到來,終于在2016年6月他們迎來了這一個最終版www.lampbrother.net。

通過jQuery 3.0的版本更新說明,我們看到了一個保持著向后兼容的更輕便,更快速的jQuery。在本文中,我們將介紹一些令人眼前一亮的jQuery 3.0全新特性。

開始前的說明

如果你想要下載jQuery 3.0進(jìn)行親自實(shí)驗(yàn),可以通過該頁面進(jìn)行下載。另外,升級指南和源代碼也值得你一看。

如果你想要測試一下你的項目如何在jQuery 3.0中工作的,你可以嘗試通過jQuery遷移插件來識別代碼的兼容性問題,你也可以查看jQuery未來發(fā)展的時間表。

1. 移除舊的IE工作區(qū)

新的最終版最主要的目標(biāo)是更加快速,更加時尚,因此,那些支持早于IE9版本的相關(guān)技術(shù)與工作區(qū)都被移除了。這意味著如果你想要或者需要支持IE6-8,你必須用回1.12版本,因?yàn)樯踔潦?.X版本都無法完整支持早于IE9的瀏覽器。

注意:在jQuery 3中還棄用了一些其它的功能。截止到2016年6月,升級指南還沒有提供一個對于棄用功能的分組整理。因此,你如果想要了解棄用功能,可以通過ctrl+f鍵來進(jìn)行搜索。

2. jQuery 3.0運(yùn)行在Strict Mode下

大多數(shù)支持jQuery 3的瀏覽器都支持strict mode,而在本次更新中對此進(jìn)行了規(guī)定。

雖然jQuery 3是寫在strict mode中的,但是你需要了解的是你的代碼并不需要運(yùn)行在strict mode中,因此如果你想要把以前的代碼遷移到j(luò)Query 3,你不需要對已存在的jQuery代碼進(jìn)行重寫。Strict和non-strict mode的JavaScript代碼可以和諧共存。

這里有一些例外:某些版本的ASP.NET,因?yàn)閟trict mode的緣故,無法與jQuery 3兼容,

3. 引進(jìn)for...of循環(huán)

jQuery 3支持for...of語句,這是由ECMAScript 6中新引進(jìn)的一種for循環(huán)語句。這提供了對Arrays,Maps和Sets這樣的可迭代對象一種更直接的遍歷方法。

在jQuery中,for...of循環(huán)可以取代以前的$.each(...)語法,并且更容易通過jQuery的元素集合進(jìn)行循環(huán)。

注意:for...of只能在支持ECMAScript 6的環(huán)境下或者使用Babel這樣的JavaScript編譯器下工作。

4. 動畫方面采用新的API

jQuery 3使用requestAnimationFrame() API來執(zhí)行動畫,使動畫運(yùn)行得更加順暢、快速。新的API只用于支持它的瀏覽器,對于那些更老的瀏覽器(如IE9)jQuery使用先前的API來作為顯示動畫的后備方案。

5. 對包含特殊含義的字符串提供轉(zhuǎn)義的新方法

新的jQuery.escapeSelector()提供了對在CSS中存在特殊含義的字符串或字符進(jìn)行轉(zhuǎn)義的方法,該方法可使這些字符串或字符能夠繼續(xù)用于jQuery選擇器中,而無需對那些無法進(jìn)行正確理解的JavaScript解釋器進(jìn)行轉(zhuǎn)義。

這個示例可以讓你更好的了解這個全新的方法:

舉個例子,頁面中某個ID為“abc.def”的元素由于選擇器將其解析為ID為“abc”且包含一個名為“def”的類的對象,而無法被$( "#abc.def" )選定。但是它可以由 $( "#" + $.escapeSelector( "abc.def" ) )來進(jìn)行選定。

我無法確定發(fā)生中情況的頻率,但是假如你碰到過這種類似的情況,這無疑給了你一個解決該問題的簡單方法。

6. 類操作方法支持SVG

不幸的是,jQuery 3現(xiàn)在還無法完整的支持SVG,但是對于操作CSS類名稱的jQuery方法,如.addClass()和.hasClass()現(xiàn)在可以將SVG文檔作為目標(biāo)。這意味著你可以修改(添加、刪除、切換)或者查找SVG(可縮放矢量圖形)下的jQuery類,然后使用CSS的類樣式。

7. 延遲對象現(xiàn)在與JS Promises兼容

JavaScript Promises,用于異步計算的對象,現(xiàn)在在ECMAScript 6中已經(jīng)被標(biāo)準(zhǔn)化;它們的運(yùn)行狀況和特性的詳細(xì)說明參見Promises/A+標(biāo)準(zhǔn)。

在jQuery 3中,延遲對象已經(jīng)與新的Promises/A+標(biāo)準(zhǔn)相兼容,延遲對象已經(jīng)成為讓創(chuàng)建回調(diào)隊列成為可能的可鏈對象(chainable objects)。

新的特性改變了異步回調(diào)函數(shù)執(zhí)行過程,Promises允許開發(fā)者編寫在邏輯上與同步代碼更接近的異步代碼。

8. jQuery.when()對于多種參數(shù)的不同解讀

$.when()提供了執(zhí)行回調(diào)函數(shù)的一種方法,它成為了jQuery 1.5之后的一部分。這個方法非常靈活,它適用于零參數(shù),也適用于一個或者多個作為參數(shù)的對象。

jQuery 3改變了當(dāng)包含$.then()方法時對$.when()中參數(shù)的解讀方法,你可以對$.when()進(jìn)行額外的參數(shù)回調(diào)。

在jQuery 3中,如果你在$.when()中的then()方法內(nèi)增加一個輸入?yún)?shù),該參數(shù)將會被解釋成一個可與Promise兼容的"thenable"。

這意味著 $.when方法能夠接收更加寬廣的輸入范圍,比如原生的ES6 Promises和Bluebird Promises,這也使得編寫更復(fù)雜的異步回調(diào)成為了可能。

9. 新的顯示/隱藏邏輯

為了增加響應(yīng)式設(shè)計的兼容性,與元素顯示和隱藏的代碼在jQuery 3中進(jìn)行了更新。

從現(xiàn)在開始,.show()、.hide()和.toggle()方法將會以內(nèi)聯(lián)樣式為重點(diǎn)取代以前的計算樣式,這種方式能夠更尊重樣式列表的改變。

新的代碼盡可能的尊重樣式列表中所呈現(xiàn)的數(shù)值,這意味著CSS規(guī)則可根據(jù)事件(如設(shè)備重新定位和窗口尺寸調(diào)整)進(jìn)行動態(tài)改變。

這個說明文件申明了最重要的結(jié)果就是:

“作為結(jié)果,斷開連接的元素除非指定了內(nèi)聯(lián)display: none,否則將不再認(rèn)定為是隱藏的。因此,在jQuery 3.0中,.toggle()不再對斷開連接元素與已連接元素進(jìn)行區(qū)分?!?/P>

如果你想要更好的了解關(guān)于全新的顯示/隱藏邏輯,這個Github discussion會對你有幫助。jQuery開發(fā)者還發(fā)布了Google文檔表來展示在不同用例下新規(guī)則的運(yùn)轉(zhuǎn)。

10. 對于防止XSS攻擊的額外保護(hù)

jQuery 3增加一個額外的安全層用戶用于防備跨站點(diǎn)腳本(XSS)攻擊,它需要開發(fā)者指定$.ajax()和$.get()方法中的選項為dataType: "script"。

換言之,如果你想要執(zhí)行跨站點(diǎn)的腳本請求,你必須在這些方法中作出這樣的聲明。

新的改變對于當(dāng)“遠(yuǎn)程站點(diǎn)傳遞非腳本內(nèi)容之后又提供有惡意腳本的服務(wù)內(nèi)容”的情況是非常有效的。這個變化不會影響$.getScript()方法,因?yàn)樗鞔_地設(shè)置了dataType: "script"選項。

以上所述是小編給大家介紹的jQuery 3.0十大新特性最終版發(fā)布,希望對大家有所幫助

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:jQuery 3.0十大新特性最終版發(fā)布
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報警專用圖標(biāo)