跳至內容

jQuery

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

這是本頁的一個歷史版本,由2001:8000:1142:7300:bdd3:f1ab:d721:1651對話2018年4月1日 (日) 20:29 参考文献編輯。這可能和目前版本存在着巨大的差異。

jQuery
原作者約翰·雷西格
開發者jQuery Team
目前版本3.3.1((2018年1月20日,​6年前​(2018-01-20))
原始碼庫 編輯維基數據連結
程式語言JavaScript
檔案大小
ver gzip prod dev
1.x 31kb 90.9kb 266kb
2.x 27.7kb 81.6kb 236kb
3.x 262kb
(KB)
類型網頁應用程式框架
特許條款MIT特許條款
網站jquery.com

jQuery是一套跨瀏覽器JavaScript函式庫,簡化HTML與JavaScript之間的操作。[1]約翰·雷西格John Resig)在2006年1月的BarCamp NYC上釋出第一個版本。目前是由Dave Methvin領導的開發團隊進行開發。全球前10,000個訪問最高的網站中,有65%使用了jQuery,是目前最受歡迎的JavaScript函式庫[2][3]

簡介

jQuery是開源軟件,使用MIT特許條款授權。[4] jQuery的語法設計使得許多操作變得容易,如操作文件(document)、選擇文件物件模型DOM)元素、建立動畫效果、處理事件、以及開發Ajax程式。jQuery也提供了給開發人員在其上建立外掛程式的能力。這使開發人員可以對底層互動與動畫、進階效果和進階主題化的組件進行抽象化。模組化的方式使jQuery函式庫能夠建立功能強大的動態網頁以及網絡應用程式

微軟諾基亞已宣佈在他們的平台上繫結jQuery。[5]微軟最初在Visual Studio中整合了jQuery[6]以便在微軟自己的ASP.NET AJAX框架和ASP.NET MVC Framework中使用,而諾基亞則在他的Web執行時組件開發平台中整合了jQuery[7]MediaWiki自從1.16版本後也開始使用jQuery[8]

jQuery 1.3版以後,引入全新的層疊樣式表CSS)選擇器引擎Sizzle。[9] 同時不再提供Packed版本,因為解壓縮的消耗的時間,遠大於所節省的下載時間,且不利於除錯,且已有Google AJAX Libraries API等公開站台提供jQuery的js的參照服務,故Packed版本原本的優點已蕩然無存。

特點

jQuery有下列特色:

  • 跨瀏覽器的DOM元素選擇
  • DOM巡訪與更改:支援CSS 1-3
  • 事件(Events)
  • CSS操縱
  • 特效和動畫(移動顯示位置、淡入、淡出)
  • Ajax
  • 延伸性(Extensibility)
  • 工具:例如瀏覽器版本(已取消內建,改由jQuery Migrate plugin外掛提供)和each函數。
  • JavaScript外掛程式
  • 輕量級
jQuery 1.8.0版時(內建Sizzle.js):
檔案 行數 大小
jquery-1.8.0.min.js 2 91KB
jquery-1.8.0.js 9228 254KB
  • DHTML DOM選擇器與鏈式語法
經由jQuery的DHTML DOM選擇器,可以更容易的操作在複雜的樹狀HTML中的任何DHTML DOM物件,並可用鏈式語法對同一物件的不同屬性進行操作。
例如:
$("p.surprise").addClass("ohmy").show("slow");
相當於
  1. 尋找HTML的<p>標簽,且其class為"surprise"的DHTML DOM物件
  2. 將其Class屬性多加上一個"ohmy"(通常是配CSS的定義做顯示時的配色修改)
  3. 開啟顯示
  • CSS 1-3選擇器:支援CSS選擇器選定DOM對象。
  • 跨瀏覽器:跨瀏覽器的AJAX解決方式,支援Internet Explorer 6.0+、Opera 9.0+、Firefox 2+、Safari 2.0+、Google Chrome 1.0+
  • 簡單:較其它JavaScript庫更易於入門。

載入jQuery

使用內容傳遞網路Content Delivery Network)載入jQuery的好處是若不同的網站使用同樣的連結時可以不用重複下載,另外也可不用在自己的伺服器上部署jQuery檔案。

以jQuery 1.10.2版為例
From Microsoft Ajax Content Delivery Network
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.10.2.min.js"></script>
From Google Libraries API
其中1.10.2若改為1.10,可獲取1.10.x最新版本
改為1,可獲取1.x.x最新版本
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://www.google.com/jsapi"></script>
<script>
    google.load("jquery", "1.10.2");
</script>
From cdnjs.cloudflare.com
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

發佈版本

JQuery目前分成1.x版與2.x版,這兩種發佈版本,後者不再支援IE 6/7/8,前者透過jQuery Migrate plugin與先前版本保持相容。

發佈日期 版本號碼 備註
2006年8月26日 1.0 最初的穩定版本
2006年8月31日 1.0.1
2006年10月9日 1.0.2
2006年10月27日 1.0.3
2006年12月12日 1.0.4 Last 1.0 bug fix
2007年1月14日 1.1
2007年1月22日 1.1.1
2007年2月27日 1.1.2
2007年7月1日 1.1.3
2007年7月5日 1.1.3.1
2007年8月24日 1.1.4
2007年9月10日 1.2 jQuery 1.2版以後預設取消XPath支援,改為外掛程式支援
2007年9月16日 1.2.1
2008年1月15日 1.2.2
2008年2月8日 1.2.3
2008年5月19日 1.2.4
2008年5月21日 1.2.5 修正1.2.4版的bug
2008年5月24日 1.2.6
2009年1月14日 1.3 Sizzle選擇器引擎匯入至核心,移除過時API[10]
2009年1月21日 1.3.1
2009年2月20日 1.3.2
2010年1月14日 1.4
2010年1月25日 1.4.1
2010年2月19日 1.4.2
2010年10月16日 1.4.3
2010年11月11日 1.4.4
2011年1月31日 1.5
2011年2月24日 1.5.1
2011年3月31日 1.5.2
2011年5月3日 1.6 改善attr()與val()的效能
2011年5月12日 1.6.1
2011年6月30日 1.6.2
2011年9月1日 1.6.3
2011年9月12日 1.6.4
2011年11月3日 1.7 移除過時API[11]
2011年11月21日 1.7.1
2012年3月21日 1.7.2
2012年8月9日 1.8.0 Sizzle選擇器引擎重寫,提高動畫與$(html, props)更具彈性.,移除過時API[12]
2012年8月30日 1.8.1
2012年9月20日 1.8.2
2012年11月13日 1.8.3
2013年1月15日 1.9.0 移除過時API[13]
2013年2月4日 1.9.1
2013年5月23日 1.10.0 移除過時API[14]
2013年5月30日 1.10.1
2013年7月3日 1.10.2
2014年1月24日 1.11.0
2014年5月1日 1.11.1
2014年12月18日 1.11.2
2015年4月28日 1.11.3 修復在iOS 8.2與8.3裏的錯誤。
2013年4月18日 2.0.0 除去對Internet Explorer 6-8的支援以提高效能,並降低檔案大小
2013年5月24日 2.0.1
2013年5月30日 2.0.2
2013年7月3日 2.0.3
2014年1月24日 2.1.0
2014年5月1日 2.1.1
2.1.2
2014年12月18日 2.1.3
2015年4月28日 2.1.4 修復在iOS 8.2與8.3裏的錯誤。

子專案

以下專案均是源自於Interface外掛程式

jQuery UI

基於jQuery的用戶介面庫,包括拖放縮放對話方塊標籤頁等多個組件。

jQuery Tools

jQuery Tools是一個第三方的套件,基於jQuery。包括了標籤頁、表單驗證、滑鼠滾輪事件等多個組件。[15]

jQuery Mobile

基於jQuery的手機網頁製作工具,jQuery Mobile的網站上包含了網頁的設計工具、主題設計工具。另外jQuery Mobile的js外掛程式包含了換頁、事件等的多項功能。[16]

參閱

參考文獻

相關書籍

英文
中文

外部連結