当前位置:经管资料网行业分类IT互联网JavaScript基础知识与前后端开发实例学习指南463页

JavaScript基础知识与前后端开发实例学习指南463页

17.3 MB
中文
50
计点资料
2014
463页
PDF [下载阅读器]
2019-03-16 09:48:17
推荐星级
IT互联网计算机 | 书籍
行业分类 | IT互联网

JavaScript基础知识与前后端开发实例学习指南简介

本书从实际的应用场景出发,结合当下热门技术(AJAx、jQuery UI、瀑布流、HTML 5、Node.js、CSS3、CSS ack),用最浅显的例子带领大家走向IT前沿。

本书分为 5 篇共 24 章。第一篇介绍 JavaScript 的基础知识,用原生的 JavaScript 做表单验证、照片展示、抽象树控件等;第二篇认识 HTML 5 的热门特性,如新表单验证、CSS3 动画、离线 API 及多媒体;第三篇学习强大的 Canvas,它是网页游戏的基础;第四篇学习用 jQuery UI 进行实战开发;第五篇通过Node.js 了解 JavaScript 强大的后端开发功能。

本书的基础知识帮助读者快速踏入 JavaScript 领域之门,jQuery 帮助读者随心所欲地去工作,HTML 5 部分帮读者搭上时代的班车,Node.js 则可以让读者位于技术的前沿。笔者的目的就是力求写出最懂人性、最懂技术的 JavaScript 书。

第一篇 JavaScript 实战篇
第 1 章 JavaScript 概述 3
1.1 认识 JavaScript 3
1.1.1 浏览器战争 3
1.1.2 寄生语言 5
1.1.3 DHTML、DOM 和 W3C 5
1.1.4 动态语言和静态语言 6
1.2 配置 JavaScript 开发环境 7
1.2.1 EditPlus 7
1.2.2 Adobe Dreamweaver 8
1.2.3 Sublime Text 8
1.2.4 JetBrains WebStorm 9
1.2.5 Aptana Studio 10
1.3 在 Web 页面中使用 JavaScript 11
1.3.1 直接内嵌 JavaScript 代码 12
1.3.2 引用 JavaScript 文件 12
1.3.3 让收藏夹做更多事情 13
1.4 高效率的开发 14
1.4.1 熟悉语法 14
1.4.2 自动完成 15
1.4.3 使用成熟框架和便捷工具 17
1.5 相关参考 17
第 2 章 用 JavaScript 验证表单 18
2.1 最简单的表单验证——禁止空白的必填项目 18
2.1.1 最简单表单的 HTML 结构 19
2.1.2 绑定验证功能 19
2.1.3 绑定验证的另一种方式 21
2.2 处理各种类型的表单元素 23
2.2.1 input、textarea、hidden 和 button 23
2.2.2 checkbox、radio 和 select 26
2.3 用正则来校验复杂的格式要求 30
2.3.1 认识 JavaScript 正则 30
2.3.2 JavaScript 正则符号及其说明 30
2.3.3 正则验证输入邮箱 33
2.4 改善用户体验 33
2.4.1 什么是用户体验 34
2.4.2 表单的用户体验改善 35
2.5 相关参考 40
第 3 章 用 JavaScript 实现照片展示 41
3.1 功能设计 41
3.1.1 HTML、CSS 和 JavaScript 的分层关系 42
3.1.2 照片展示功能设计 42
3.2 照片加载与定位 43
3.2.1 HTML 代码 43
3.2.2 CSS 代码 43
3.2.3 JavaScript 代码 46
3.3 响应鼠标动作 48
3.3.1 响应小照片单击动作 48
3.3.2 响应小照片上一组或下一组单击动作 49
3.4 响应键盘动作 49
3.4.1 常见键盘按键对应的 ASCII 码值 49
3.4.2 响应键盘动作 50
3.5 代码分离带来的红利 51
3.6 相关参考 52
第 4 章 AJAx——无刷新的用户体验 53
4.1 认识 AJAx 53
4.1.1 AJAx 是技术不是编程语言 53
4.1.2 同步与异步 54
4.1.3 AJAx 与 JSON 55
4.1.4 AJAx 是如何工作的 56
4.2 xMLHttpRequest 对象的常见方法和属性 58
4.2.1 xMLHttpRequest 对象方法 58
4.2.2 xMLHttpRequest 对象属性 60
4.3 检查待注册的用户名是否存在 63
4.3.1 客户端进行检测 63
4.3.2 服务器端获取数据 64
4.4 用 Ajax 提交数据给服务器 65
4.4.1 客户端部分 65
4.4.2 服务端部分 67
4.5 相关参考 68
第 5 章 瀑布流布局 69
5.1 瀑布流简介 69
5.1.1 瀑布流是不是万金油 69
5.1.2 穿过瀑布流看水帘洞 70
5.2 固定列宽的简单瀑布流实现 72
5.2.1 简单的 HTML 结构 72
5.2.2 让瀑布流动起来 74
5.3 非固定列宽的复杂瀑布流 76
5.3.1 非固定列宽瀑布流的争议 76
5.3.2 用 Masonry 实现任意非固定列宽瀑布流 77
5.4 延迟加载图片 79
5.4.1 延迟加载是何方神圣 79
5.4.2 延迟加载运用实例 80
5.5 相关参考 83
第 6 章 用户控件的构造——目录树视图 84
6.1 功能设计 84
6.2 树视图的最简化实现 85
6.2.1 树视图的 HTML 结构和数据结构 85
6.2.2 用递归最简化显示树 86
6.3 类和抽象 88

6.3.1 基于对象(Object-Based)和面向对象(Object-Oriented) 89

6.3.2 用 JavaScript 创建一个类 89
6.3.3 静态属性、方法和动态属性、方法 90
6.3.4 JavaScript 继承 91
6.3.5 私有属性和方法 92
6.3.6 抽象 92
6.4 复杂的树视图 93
6.4.1 闭包隔离变量污染 93
6.4.2 省去 new 关键字调用控件 93
6.4.3 丰富控件方法 93
6.5 相关参考 100
第二篇 HTML 5+CSS 3 实战篇
第 7 章 HTML 5 概述 103
7.1 什么是 HTML 5 103
7.1.1 差点夭折的 HTML 5 103
7.1.2 HTML 5 的前世今生 104
7.1.3 HTML 5 理念 106
7.2 HTML 5 的新特性 106
7.2.1 语义化 106
7.2.2 CSS 3 107
7.2.3 本地存储/离线应用 107
7.2.4 音频/视频多媒体 109
7.2.5 画布 Canvas 109
7.2.6 本地文件访问 109
7.2.7 开放字体格式 WOFF 109
7.2.8 地理位置 109
7.2.9 微数据 110
7.2.10 xMLHttpRequest Level 2 110
7.2.11 新的 HTML Forms 111
7.2.12 其他特性及未来发展 111
7.3 有哪些浏览器支持 HTML 5 112
7.4 如何书写 HTML 5 113
7.4.1 HTML 5 和 xHTML 的对比 113
7.4.2 HTML 5 书写的误区 114
7.5 相关参考 115
第 8 章 焕然一新的表单 116
8.1 E-mail 和 URL 类型的输入元素 116
8.1.1 各浏览器内核一览 116
8.1.2 各浏览器对 E-mail 和 URL 类型的支持情况 118
8.1.3 全球顶级域名 119
8.1.4 E-mail 类型的使用 121
8.1.5 URL 类型的使用 122
8.2 数值输入 122
8.2.1 各浏览器对 number 类型的支持情况 123
8.2.2 number 类型的属性与使用 123
8.3日期选择器 124
8.3.1 各浏览器对日期选择器的支持情况 124
8.3.2日期选择器类型与使用 124
8.4 用 datalist 来实现自动提示 126
8.4.1 各浏览器对 datalist 的支持情况 126
8.4.2 各浏览器 datalist 的效果对比 126
8.4.3 datalist 让 input 自动提示更智能 127
8.5 相关参考 128
第 9 章 在 Web 页面中轻松控制多媒体视频和音乐 129
9.1 在页面中插入视频和音频 129
9.1.1 容器和编解码器 129
9.1.2 使用 HTML 5 Video 和 Audio API 的好处 131
9.1.3 浏览器支持性检测 132
9.1.4 使用 video/audio 元素 132
9.1.5 使用 source 元素来兼容 133
9.2 video/audio 元素的属性 134
9.2.1 通过 HTML 设置的属性 134
9.2.2 通过 JavaScript 设置的属性 135
9.3 video/audio 元素的事件 136
9.3.1 video/audio 元素的主要事件 136
9.3.2 设置当前播放位置 137
9.4 video/audio 元素的方法 138
9.4.1 通过 JavaScript 控制的方法 138
9.4.2 鼠标悬停播放,移开暂停 139
9.5 综合应用——打造属于自己的视频播放器 139
9.5.1 界面设计 139
9.5.2 CSS 3+HTML 布局 140
9.5.3 用 JavaScript 控制播放器 142
9.6 相关参考 148
第 10 章 用 CSS 3 画一个哆啦 A 梦 149
10.1 CSS 3 简介 149
10.1.1 CSS 3 历史情况 149
10.1.2 CSS 3 的支持情况 150
10.2 阴影和文本阴影 150
10.2.1 阴影(box-shadow) 151
10.2.2 文本阴影(text-shadow) 152
10.3 圆角 154
10.3.1 圆角(border-radius)属性 154
10.3.2 圆角变圆与半圆 155
10.4 渐变 155
10.4.1 线性渐变 155
10.4.2 放射渐变 157
10.5 综合应用——画一个哆啦 A 梦 158
10.5.1 头部和脸部 159
10.5.2 脖子和铃铛 162
10.5.3 身体和四肢 164
10.5.4 让眼睛动起来 168
10.6 相关参考 169
第 11 章 酷炫的 CSS 3 动画效果 ——3D 旋转方块 170
11.1 文本描边和文本填充色 170
11.1.1 文本描边(text-stroke) 171
11.1.2 文本填充(text-fill-color) 171
11.2 变形和变形原点 172
11.2.1 变形(transform) 172
11.2.2 变形原点(transform-origin) 175
11.3 简单应用——飞行旋转文本 176
11.3.1 过渡动画(transition) 177
11.3.2 自定义动画(animation)和@keyframes 178
11.3.3 飞行旋转的文本 179
11.4 综合应用——3D 旋转方块 181
11.5 相关参考 183
第 12 章 一个可以离线的内容管理系统 185
12.1 功能设计 185
12.2 Web 储存和应用缓存 186
12.2.1 本地存储(LocalStorage) 186
12.2.2 会话存储(SessionStorage) 187
12.2.3 应用程序缓存 187
12.2.4 搭建支持应用缓存的服务器 188
12.2.5 神奇的 manifest file 文件清单 189
12.3 HTML 5 本地存储 190
12.3.1 Web IndexedDB 191
12.3.2 Web Sql Database 193
12.4 编写内容管理系统 195
12.4.1 可离线的 HTML、JS 和 CSS 195
12.4.2 添加数据 196
12.4.3 列表和查询数据 198
12.4.4 更新数据 199
12.4.5 删除数据 199
12.4.6 前端交互 200
12.5 相关参考 201
第 13 章 SVG 动画 202
13.1 什么是 SVG 202
13.1.1 SVG 的历史 202
13.1.2 SVG 的优缺点 203
13.1.3 SVG 的 Hello world 204
13.1.4 SVG 的调用方式 205
13.2 SVG 形状 205
13.2.1 矩形(rect) 206
13.2.2 圆形(circle) 207
13.2.3 椭圆(ellipse) 207
13.2.4 线(line) 207
13.2.5 折线(polyline) 208
13.2.6 多边形(polygon) 208
13.2.7 路径(path) 208
13.3 SVG 滤镜 209
13.3.1 高斯模糊滤镜(feGaussianBlur) 210
13.3.2 色彩转换滤镜(feColorMatrix) 210
13.3.3 位移滤镜(feOffset) 211
13.4 SVG 渐变 212
13.4.1 线性渐变(linearGradient) 212
13.4.2 放射渐变(radialGradient) 213
13.5 制作简单的 SVG 动画——太阳系 214
13.5.1 SVG 绘制的太阳和地球公转轨迹 215
13.5.2 贴图地球和地月系统 215
13.5.3 太阳系 216
13.6 相关参考 217
第三篇 HTML 5 Canvas 实战篇
第 14 章 Canvas 的初步应用 ——再画一个哆啦 A 梦 221
14.1 什么是 Canvas 221
14.1.1 Canvas 起源 221
14.1.2 Canvas 的支持情况 222
14.1.3 Canvas 优缺点及与 SVG 的对比 222
14.1.4 Canvas 与 JavaScript 223
14.1.5 Canvas 的发展 223
14.1.6 Canvas 标签的使用 224
14.2 绘制形状和文字 224
14.2.1 直线(lineTo) 225
14.2.2 矩形(rect) 226
14.2.3 圆(arc) 228
14.2.4 弧和圆角(arcTo) 229
14.2.5 贝塞曲线 quadraticCurveTo 231
14.2.6 绘制文本(fillText)和 strokeText 232
14.3 颜色、风格和阴影 233
14.3.1 线性渐变(createLinearGradient) 233
14.3.2 放射渐变(createRadialGradient) 235
14.3.3 阴影 235
14.4 再画一个哆啦 A 梦 236
14.4.1 准备工作 237
14.4.2 绘制头和脸 237
14.4.3 绘制眼睛和鼻子 238
14.4.4 绘制嘴巴和胡须 239
14.5 相关参考 239
第 15 章 Canvas 的高级应用 ——制作飞行游戏 240
15.1 转换 240
15.1.1 放大和缩小 240
15.1.2 平移和旋转 242
15.1.3 矩阵转换 244
15.2 合成 246
15.2.1 用 Photoshop 控制图形合成 246
15.2.2 使用 Canvas 控制图形合成 246
15.3 碰撞检测 248
15.3.1 圆形碰撞检测 249
15.3.2 矩形碰撞检测 249
15.4 让游戏动起来 250
15.4.1 打飞机游戏设计 250
15.4.2 移动的星空 251
15.4.3 加载资源 252
15.4.4 我方战机、敌机和子弹 253
15.4.5 让游戏动起来 255
15.5 相关参考 256
第 16 章 Canvas 的另类应用 ——压缩和解压 257
16.1 绘制图片 257
16.1.1 绘制外部载入的图片 258
16.1.2 Canvas 给视频加字幕 259
16.2 像素级操作 260
16.2.1 反转颜色-底片效果 260
16.2.2 灰度控制——黑白灰效果 262
16.2.3 透明度控制 263
16.2.4 倒影 264
16.3 实现压缩解压功能 266
16.3.1 载入位图 266
16.3.2 压缩位图 266
16.3.3 保存到本地 267
16.4 相关参考 268
第四篇 jQuery 实战篇
第 17 章 jQuery 简介 271
17.1 什么是 jQuery 271
17.1.1 jQuery 的历史 272
17.1.2 为什么要使用 jQuery 273
17.2 编写 jQuery 代码 275
17.2.1 下载 jQuery 275
17.2.2 简单应用 jQuery 276
17.2.3 调试 jQuery 程序 277
17.3 基于 jQuery 的 UI 插件 280
17.3.1 基于 jQuery 的扩展——jQuery UI 插件 280
17.3.2 下载 jQuery UI 插件 281
17.3.3 简单应用 jQuery UI 插件 285
17.3.4 其他 UI 框架 286
17.4 相关参考 290
第 18 章 用动态效果来响应浏览者 291
18.1 jQuery 库基础 291
18.1.1 jQuery 库的核心方法——$() 291
18.1.2 jQuery 库延迟等待加载模式 293
18.1.3 jQuery 对象与 DOM 对象间的转换 293
18.2 基础选择器 295
18.2.1 简单选择器 295
18.2.2 进阶选择器 298
18.2.3 高级选择器 303
18.3 过滤选择器 307
18.3.1 jQuery 所支持的过滤器 307
18.3.2 页面中的经典导航条 309
18.4 操作 DOM 对象 312
18.4.1 jQuery 关于元素的操作 312
18.4.2 关于表的经典效果 315
18.4.3 jQuery 关于节点的操作 316
18.4.4 超级链接提示效果 318
18.4.5 图片预览效果 320
18.5 响应事件 322
18.5.1 绑定和删除事件 323
18.5.2 jQuery 所支持的事件和事件类型 325
18.5.3 表单动态效果 327
18.6 实现动态效果 334
18.6.1 jQuery 库所支持的动画方法 334
18.6.2 实现可折叠的列表 336
18.6.3 淡入淡出效果 338
18.7 相关参考 340
第 19 章 用户交互操作、进度条和滑动条美化页面 341
19.1 页面中的交互操作 341
19.1.1 jQuery UI 所支持的拖动组件 341
19.1.2 jQuery UI 所支持的拖放组件 343
19.1.3 模拟 Windows 系统“回收站” 345
19.2 页面中的进度条效果 349
19.2.1 jQuery UI 所支持的进度条工具集 349
19.2.2 实现进度条效果 350
19.3 页面中滑动条效果 352
19.3.1 jQuery UI 所支持的滑动条工具集 352
19.3.2 实现图片滑块滚动条效果 353
19.3.3 实现简单颜色调色器 357
19.4 相关参考 359
第 20 章 用工具集实现酷炫的页面 360
20.1 实现“手风琴”效果 360
20.1.1 jQuery UI 所支持的折叠面板工具集 360
20.1.2 实现经典的导航菜单 362
20.2 设计页面中各种对话框效果 363
20.2.1 jQuery UI 所支持的对话框工具集 364
20.2.2 实现弹出和确认信息对话框效果 366
20.3 处理页面中的日期 368
20.3.1 jQuery UI 所支持的日期选择器工具集 369
20.3.2 实现日期输入框 372
20.3.3 实现选取时间段功能 373
20.4 实现幻灯和分页效果 376
20.4.1 jQuery UI 所支持的选项卡工具集 376
20.4.2 经典的选项卡效果 377
20.4.3 实现幻灯效果 380
20.4.4 实现分页效果 382
20.5 相关参考 385
第五篇 Node.js 实战篇
第 21 章 Node.js 简介 389
21.1 什么是 Node.js 389
21.1.1 Node.js 是平台 389
21.1.2 Node.js 不是万能的 390
21.2 获取、安装和配置 Node.js 392
21.2.1 Node.js 获取 392
21.2.2 Node.js 的安装 393
21.2.3 Node.js 的配置 394
21.3 Node.js 与其他服务器脚本语言的比较 395
21.4 Node.js 与客户端 JavaScript 脚本的比较 396
21.5 相关参考 397
第 22 章 构造一个最简单的 Web 服务器 398
22.1 Node.js 中脚本文件的组织 398
22.1.1 CommonJS 规范 399
22.1.2 Node.js 中的模块 399
22.1.3 HTTP 协议 400
22.2 建立服务、路径处理与响应 402
22.2.1 用 6 行代码创建的 Web 服务器 402
22.2.2 让 Web 服务器响应和处理不同路径 403
22.3 异步与文件处理 405
22.3.1 智能的 404 提示 405
22.3.2 文件格式 MIME 协议 408
22.3.3 响应不同类型的文件 410
22.4 处理文件上传 413
22.4.1 安装并使用 Node.js 第三方模块 413
22.4.2 用 node-formidable 处理上传图片 415
22.5 相关参考 417
第 23 章 基于 Express 框架的 Http 服务器 419
23.1 引入 Express 框架 419
23.1.1 Express 与 Connect 419
23.1.2 在 Node.js 环境下安装 Express 420
23.1.3 用 Express 搭建简单 Web 应用 421
23.2 Express 的程序控制 423
23.2.1 模板引擎 ejs 423
23.2.2 中间件(middleware) 426
23.3 Express 的请求解析 427
23.3.1 路由 routes 427
23.3.2 Request 对象 429
23.4 Express 的响应控制 429
23.4.1 wirte、end、send 输出响应到客户端 430
23.4.2 JSON、JSONP 输出响应到客户端 431
23.4.3 设置 cookie 432
23.4.4 其他响应控制 432
23.5 相关参考 432
第 24 章 构造一个基于 Socket 的聊天系统 433
24.1 建立 Socket 服务器 433
24.1.1 安装 Socket.1O 434
24.1.2 聊天室服务端 435
24.2 HTML 5 中的 Web Socket 436
24.2.1 Web Socket 协议 436
24.2.2 Nginx 对 Web Socket 的支持 437
24.2.3 Web Socket 常用 API 437
24.3 在 Node.js 中操作数据库 438
24.3.1 操作 MS SQL Server 438
24.3.2 操作 MySQL 440
24.3.3 操作 MongoDB 444
24.4 完善聊天系统 446
24.4.1 聊天室客户端 446
24.4.2 Socket.1O 常见 API 447
24.5 相关参考 448

全部