# 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 敏捷开发