# 2.3.3 jQuery
### 2.3.3 jQuery
[jQuery](http://jquery.com/)是一個JavaScript代碼庫(library)。它既非ECMAScript標準庫(standard library)的一部分,也非瀏覽器對JavaScript的擴展(如DOM API那樣)。但它十分重要,有必要做一介紹。
下面的例子用jQuery實現了與上面相同的功能:
```
<html>
<head>
<meta charset="utf-8" />
<title>你好</title>
</head>
<body>
<button id="btn1">點我</button>
<script src="http://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
$('#btn1').click(function() {
$('body').html('<h1>你好,JavaScript!</h1>');
});
</script>
</body>
</html>
```
這行代碼引入了jQuery庫:
```
<script src="http://code.jquery.com/jquery-1.12.4.min.js"></script>
```
這段代碼對button的click事件注冊了一個回調函數:
```
<script>
$('#btn1').click(function() {
$('body').html('<h1>你好,JavaScript!</h1>');
});
</script>
```
jQuery有幾個重要功能。首先就是簡單、靈活的HTML元素選擇功能。如果讀者對CSS選擇器(selector)有一些了解就會發現:jQuery可以使用相同的選擇器來選擇HTML元素。例如,通過ID選擇對象
```
$('#btn1')
```
或者通過元素名稱選擇對象
```
$('body')
```
其次就是提供簡單、一致的編程接口。例如上面用來注冊事件的click方法,以及用來設置內容文本的html方法,都比對應的標準API要簡單。
“一致性”在此值得一提:我們希望相同的HTML文檔在不同的瀏覽器里表現一致——內容、排版和行為都一樣。但實際上這種一致性不是輕易可得的,尤其是在早些年Web標準(如HTML,CSS和ECMAScript的標準)還不完善的時候。雖然現在標準日臻完善,但各瀏覽器廠商在遵循/理解標準方面仍有差異。jQuery提供的編程接口“抹平”了這種差異性,使我們至少在JavaScript編程方面可以比較容易地做到跨瀏覽器一致。
- 前言
- 1 Web概述
- 1.1 什么是Web
- 1.2 超文本和超鏈接
- 1.3 URL
- 1.4 DNS
- 1.5 HTTP
- 1.5.1 客戶端請求
- 1.5.2 服務器應答
- 1.5.3 進一步了解HTTP
- 1.6 HTTPS
- 2 Web瀏覽器
- 2.1 HTML
- 2.1.1 文檔類型聲明
- 2.1.2 標簽和屬性
- 2.1.3 文檔結構
- 2.1.4 DOM
- 2.1.5 進一步了解HTML
- 2.2 CSS
- 2.2.1 樣式與樣式表
- 2.2.2 樣式表語法
- 2.2.3 級聯樣式表
- 2.2.4 進一步了解CSS
- 2.3 JavaScript
- 2.3.1 script標簽
- 2.3.2 操縱DOM
- 2.3.3 jQuery
- 2.3.4 進一步了解JavaScript
- 2.4 Ajax
- 2.5 移動設備與響應式Web設計
- 3 Web服務器
- 3.1 方法與資源
- 3.2 狀態代碼
- 3.3 靜態內容與動態內容
- 3.4 編程語言與技術
- 3.4.1 CGI
- 3.4.2 PHP
- 3.4.3 Java
- 3.4.4 Python
- 3.4.5 Ruby
- 3.4.6 Node.js
- 3.5 RESTful Web API
- 3.6 服務器架構
- 3.7 Web緩存
- 3.8 服務器推送
- 4 數據庫
- 4.1 關系型數據庫
- 4.2 NoSQL數據庫
- 5 Web服務器的其他組件
- 5.1 Cron
- 5.2 消息隊列
- 5.3 郵件服務器
- 6 開發工具與技術
- 6.1 Git
- 6.1.1 Git基礎操作
- 6.1.2 Git基本原理
- 6.1.3 進一步了解Git
- 6.2 敏捷開發