第1章 HTML与JavaScript的基础 1
1-1 HTML的基础 2
1-1-1 认识HTML 2
1-1-2 HTML5的网页结构 3
1-2 认识JavaScript 4
1-2-1 JavaScript与脚本语言 4
1-2-2 客户端网页技术 5
1-3 JavaScript的开发环境WebMatrix 6
1-3-1 下载与安装WebMatrix开发工具 6
1-3-2 启动WebMatrix新建HTML网站 7
1-3-3 更改默认的网站位置 10
1-3-4 开启本书的范例网站 11
1-4 创建第一个JavaScript程序 12
1-4-1 在HTML网页插入JavaScript程序代码 12
1-4-2 创建第一个JavaScript程序 13
1-4-3 更改WebMatrix的默认浏览器 17
1-4-4 显示JavaScript程序代码的错误 18
1-5 JavaScript程序代码的位置 19
1-5-1 在Head区块的JavaScript程序代码 19
1-5-2 在Body区块的JavaScript程序代码 20
1-5-3 使用外部JavaScript程序文件 21
1-6 JavaScript的编写风格 23
1-6-1 程序语句 24
1-6-2 程序注释 25
1-6-3 太长的程序代码 25
1-6-4 空格符 25
1-6-5 程序代码缩排 25
第2章 JavaScript的变量与运算符 27
2-1 JavaScript的变量 28
2-1-1 变量命名与声明 28
2-1-2 赋值语句 30
2-1-3 JavaScript的变量是否存在 31
2-2 JavaScript的数据类型 33
2-2-1 JavaScript的数据类型 33
2-2-2 Escape转义字符 35
2-3 JavaScript的运算符 37
2-3-1 运算符的优先级 37
2-3-2 算术运算符 38
2-3-3 逻辑与比较运算符 40
2-3-4 位运算符 42
2-3-5 赋值运算符 43
2-4 数据类型的转换 44
2-4-1 数据类型的强制转换 44
2-4-2 数据类型的转换函数 46
第3章 JavaScript的流程控制 50
3-1 流程控制的基础 51
3-2 JavaScript的条件控制 52
3-2-1 if是否选择条件语句 53
3-2-2 if/else二选一条件语句 54
3-2-3 if/else多选一条件语句 55
3-2-4 switch多选一条件语句 57
3-2-5 条件运算符?: 58
3-3 JavaScript的循环控制 60
3-3-1 for循环语句 60
3-3-2 for/In循环语句 61
3-3-3 while循环语句 63
3-3-4 do/while循环语句 64
3-4 继续和跳出循环 66
3-5 JavaScript的嵌套循环 68
第4章 JavaScript的函数与对象 72
4-1 JavaScript的函数 73
4-1-1 JavaScript的内建函数 73
4-1-2 创建JavaScript自定义函数 74
4-1-3 拥有参数的JavaScript函数 75
4-1-4 JavaScript函数的返回值 77
4-1-5 JavaScript函数的传值或引用参数 78
4-1-6 JavaScript函数的参数数组 81
4-2 JavaScript函数的变量范围 83
4-3 JavaScript的对象 85
4-3-1 面向对象程序设计语言 85
4-3-2 JavaScript的对象、属性和方法 86
4-3-3 JavaScript支持的对象 87
4-4 自定义JavaScript的对象 87
4-4-1 使用Obiect对象创建自定义对象 87
4-4-2 with程序块 89
4-4-3 使用构造函数来创建对象 90
4-4-4 对象的层级结构 93
4-4-5 新建对象的方法 96
4-5 JavaScript的Prototype对象 99
4-5-1 基于类的和基于原型的程序设计语言 99
4-5-2 新建Prototype对象的属性 99
4-5-3 新建Prototype对象的方法 101
4-5-4 扩展JavaScript内部对象的方法 103
4-5-5 Prototype对象的继承 105
第5章 JavaScript的内部对象 109
5-1 JavaScript的内部对象 110
5-1-1 JavaScript内部对象的种类 110
5-1-2 JavaScript的内部对象 110
5-2 JavaScript的String对象 112
5-2-1 创建String对象 112
5-2-2 字符串的长度与大小写 115
5-2-3 获取字符串的指定字符 116
5-2-4 子字符串的搜索 118
5-2-5 子字符串的处理 119
5-3 JavaScript的Array对象 121
5-3-1 JavaScript的一维数组 121
5-3-2 Array对象的属性和方法 123
5-3-3 JavaScript的多维数组 125
5-4 JavaScript的Date对象 127
5-4-1 获取日期和时间 127
5-4-2 设置日期和时间 129
5-4-3 日期和时间的转换 130
5-4-4 获取系统的时间 131
5-5 JavaScript的Math对象 133
5-5-1 Math对象的属性 133
5-5-2 Math对象的随机数、最大和最小值 134
5-5-3 Math对象的数学方法 136
5-6 JavaScript的Error对象 136
5-6-1 JavaScript的例外处理 136
5-6-2 JavaScript多层的例外处理结构 138
5-7 对象的共享属性和方法 141
5-7-1 JavaScript对象的共享属性 141
5-7-2 JavaScript对象的共享方法 141
第6章 DOM对象模型 144
6-1 DOM对象模型的基础 145
6-1-1 对象模型与DOM 145
6-1-2 基于DOM的HTML网页内容 147
6-2 获取HTML元素节点 148
6-2-1 使用Id属性获取元素节点 148
6-2-2 使用标签名称获取元素节点 150
6-2-3 获取与更改元素内容 153
6-2-4 存取HTML元素的尺寸与位置 155
6-3 DOM的节点浏览 157
6-3-1 DOM浏览节点的相关属性 157
6-3-2 浏览父节点 159
6-3-3 浏览兄弟节点 160
6-3-4 浏览子节点与子元素 163
6-4 HTML集合对象 165
6-5 访问HTML标签的属性 167
6-6 DOM的节点操作 169
6-6-1 插入和新建节点 169
6-6-2 删除节点 172
第7章 CSS层叠式样式表 176
7-1 CSS层叠式样式表 177
7-1-1 CSS的基础 177
7-1-2 CSS的基本语法 177
7-1-3 在HTML网页套用CSS 178
7-2 CSS的选择器 179
7-2-1 使用类型选择器 179
7-2-2 使用嵌套选择器 181
7-2-3 使用群组选择器 182
7-2-4 使用样式类的选择器 184
7-2-5 使用id属性的选择器 185
7-2-6 更多的CSS选择器 186
7-3 常用的CSS样式属性 188
7-4 动态CSS样式 191
7-4-1 Style对象的属性 191
7-4-2 动态样式的字体与颜色 192
7-5 绝对位置的样式属性 194
7-5-1 绝对位置的样式属性 194
7-5-2 移动标题文字 196
第8章 jQuery基础与Firebug开发工具 199
8-1 jQuery的基础 200
8-2 jQuery的下载与使用 201
8-2-1 下载jQuery 201
8-2-2 在JavaScript程序中使用jQuery 201
8-3 创建jQuery程序 202
8-3-1 创建第一个jQuery程序 202
8-3-2 jQuery程序结构 204
8-4 Firebug开发工具 206
8-4-1 安装和启动Firebug Lite 206
8-4-2 HTML标签页 207
8-4-3 CSS标签页 211
8-4-4 控制台标签页 212
8-4-5 Script脚本标签页 213
第9章 jQuery选择器与CSS和DOM 220
9-1 jQuery选择器与包装器 221
9-1-1 jQuery包装器 221
9-1-2 jQuery选择器 222
9-2 基本CSS选择器 223
9-2-1 使用CSS选择器选择元素 223
9-2-2 使用多个类名称来选择元素 226
9-2-3 父子关系选择器 227
9-2-4 同时选择多种不同类型的元素 228
9-3 筛选选择器 230
9-3-1 使用EVEN和ODD筛选选择器 230
9-3-2 使用FIRST和LAST筛选选择器 232
9-3-3 筛选空元素和特定元素 233
9-3-4 筛选包含特定内容的元素 235
9-4 属性选择器 236
9-4-1 选择包含指定网址的超链接 236
9-4-2 选择id属性值是特定开头或结尾的元素 237
9-5 jQuery与CSS 239
9-5-1 访问CSS 239
9-5-2 访问CSS样式类 242
9-6 jQuery与DOM处理 244
9-6-1 在网页添加和删除DOM元素 244
9-6-2 获取jQuery包装类的DOM元素 247
第10章 jQuery事件处理 250
10-1 事件处理的基础 251
10-1-1 事件与事件处理 251
10-1-2 jQuery的事件处理过程 252
10-2 创建jQuery的事件处理 254
10-2-1 使用bind()方法创建事件处理 254
10-2-2 使用缩写事件方法创建事件处理 256
10-2-3 事件对象 258
10-2-4 使用unbind()方法删除事件处理 260
10-2-5 元素的默认行为 262
10-3 Document和Window事件 263
10-4 鼠标事件 266
10-4-1 再谈click事件 266
10-4-2 使用mouseenter与mouseleave事件 269
10-4-3 使用mouseup和mousedown事件 270
10-5 组合事件 272
10-5-1 使用toggle事件切换显示网页元素 272
10-5-2 使用hover事件提示可单击元素 274
10-6 键盘事件 276
10-7 窗体事件 278
第11章 jQuery动画与特效 282
11-1 动画与特效的基础 283
11-2 基本特效 285
11-2-1 基本显示与隐藏元素 285
11-2-2 切换显示与隐藏元素 288
11-2-3 使用回拨函数 290
11-3 滑动特效 292
11-3-1 滑动显示搜索选项 292
11-3-2 滑动显示登录窗体 294
11-4 淡入淡出特效 295
11-4-1 创建交叉进出特效 296
11-4-2 调整元素的透明度 298
11-5 延迟时间和串联多种特效 300
11-5-1 添加延迟时间创建动画特效 300
11-5-2 串联多种特效方法 301
11-6 创建定制化动画 303
11-6-1 使用animate()方法 303
11-6-2 CSS填充属性的动画效果 306
11-6-3 变速的动画效果 308
11-6-4 多重回拨函数 310
第12章 jQuery菜单、导航与标签页 313
12-1 网站导航的基础 314
12-2 超链接的处理 314
12-2-1 选择网页中的超链接 314
12-2-2 显示超链接的URL网址 316
12-2-3 在新窗口开启超链接 318
12-3 导航栏与菜单 320
12-3-1 网站导航栏 320
12-3-2 下拉式菜单 324
12-3-3 可折叠菜单 327
12-3-4 手风琴菜单 330
12-4 标签页 334
12-5 工具提示框 338
第13章 创建jQuery Mobile程序 343
13-1 jQuery Mobile的基础 344
13-2 移动浏览器与Viewport 345
13-2-1 移动浏览器与仿真器 345
13-2-2 Meta标签Viewport 347
13-3 下载、安装与使用jQuery Mobile 349
13-3-1 下载jQueryMobile 349
13-3-2 安装jQuery Mobile至WebMatrix网站 350
13-3-3 在HTML网页使用jQuery Mobile 350
13-4 创建第一个jQuery Mobile程序 351
13-5 jQuery Mobile页面结构 354
13-5-1 jQuery Mobile框架结构 354
13-5-2 页面结构与角色 355
13-5-3 多页面结构 356
13-6 导航jQuery Mobile页面 359
13-6-1 页面标题栏的返回按钮 359
13-6-2 连接其他程序的jQuery Mobile页面 362
13-6-3 页面转换特效 365
第14章 按钮、对话框与工具栏 368
14-1 对话框 369
14-2 按钮 371
14-2-1 创建按钮 371
14-2-2 按钮的群组控制 373
14-2-3 按钮的图标与位置 375
14-2-4 更多按钮外观 377
14-3 可折叠内容 378
14-4 多列与表格版面布局 381
14-4-1 多列版面布局 381
14-4-2 表格版面布局 383
14-5 导航工具栏 384
14-5-1 创建导航工具栏 385
14-5-2 在导航工具栏按钮加上图标 387
14-6 标准工具栏 389
14-6-1 标题工具栏 389
14-6-2 脚注工具栏 391
14-6-3 标准固定模式 392
14-6-4 全屏幕固定模式 394
14-6-5 固定不变的脚注工具栏 396
第15章 ListView列表与jQuery Mobile窗体 400
15-1 基本ListView列表 401
15-1-1 创建ListView列表 401
15-1-2 标题栏与互动行图标 404
15-2 高级ListView列表 406
15-2-1 分割行列表 406
15-2-2 表项的文字内容 407
15-2-3 在列表表项显示图片 410
15-2-4 气泡计数列表 413
15-2-5 筛选ListView列表的表项 415
15-3 jQuery Mobile窗体 415
15-3-1 送出jQuery Mobile窗体 416
15-3-2 创建jQuery Mobile的表单字段 417
15-4 jQuery Mobile数据输入字段 418
15-5 jQuery Mobile选择字段 422
15-6 jQuery Mobile菜单字段 426
第16章 jQuery Mobile API与Ajax 431
16-1 jQuery Mobile API的事件 432
16-2 jQuery Mobile API的方法 434
16-2-1 使用程序代码切换至其他页面 434
16-2-2 使用程序代码预先加载页面 437
16-2-3 显示与隐藏页面加载信息 437
16-2-4 动态创建与更新组件 438
16-3 jQuery Mobile框架的全局配置 441
16-4 认识Ajax技术 443
16-4-1 异步HTTP请求 444
16-4-2 Ajax应用程序结构 445
16-4-3 在WebMatrix新建PHP网站 446
16-5 Ajax与PHP 447
16-5-1 使用post()方法送出HTTP POST请求 447
16-5-2 使用get()方法送出HTTP GET请求 451
16-5-3 使用getJSON()方法获取JSON 453
16-5-4 低级的ajax()方法 457
第17章 Node.js入门与实现 461
17-1 认识Node.js 462
17-2 使用WebMatrix创建Node.js网站 462
17-3 创建第一个Node.js程序 464
17-3-1 创建与运行第一个Node.js程序 464
17-3-2 Node.js的基本观念 465
17-4 Node.js的JavaScript 468
17-4-1 Node.js的全局对象 468
17-4-2 Node.js模块机制 471
17-4-3 Event Emitter事件驱动对象 472
17-4-4 Buffer缓冲区对象 474
17-5 Node.js的路径和文件模块 475
17-5-1 path路径模块 475
17-5-2 fs文件模块 477
第18章 Node.js网络应用程序开发 482
18-1 开发TCP网络应用程序 483
18-1-1 创建TCP服务器 483
18-1-2 创建TCP客户端程序 484
18-2 创建HTTP的Web服务器 486
18-2-1 使用Node.js创建Web服务器 486
18-2-2 使用fs模块来读取网页文件 488
18-2-3 路由处理 491
18-2-4 HTML窗体处理 492
18-3 MVC设计模式与Web应用程序 495
18-3-1 认识Web应用程序 496
18-3-2 MVC设计模式 496
18-4 Node.js+Express.js创建Web应用程序 497
18-4-1 WebMatrix的Express网站范本 497
18-4-2 Node.js程序server.js 500
18-4-3 在Express网站新建静态网页 501
18-4-4 在Express网站新建View网页 501
附录 jQuery的网络资源 505