JavaScript精粹(修订版)

978-7-115-29722-8
作者: 【英】Edwards J. 【澳】Adams C.
译者: 高铁军
编辑: 陈冀康

图书目录:

目 录

第 1章 JavaScript初步 1

1.1 JavaScript的定义 1

1.2 JavaScript的限制 2

1.3 JavaScript的**佳实践 3

1.4 为没有JavaScript的用户着想(渐进增强) 4

1.5 内容和行为的隔离(谨慎地编码) 5

1.6 使用括号和分号结束符(一致的编码方式) 7

1.7 给页面添加脚本 9

1.7.1 用HTML注释框住代码 9

1.7.2 语言属性 10

1.8 让不同的脚本在同一页面中协同工作 10

1.9 隐藏JavaScript源代码 12

1.10 脚本调试 13

1.10.1 理解浏览器内建的错误报告 14

1.10.2 使用alert 15

1.10.3 使用try-catch 16

1.10.4 向页面和窗口中写入数据 17

1.10.5 使用外部调试器 17

1.11 严格的警告 18

1.12 小结 19

第 2章 使用数字 20

2.1 JavaScript中的数学计算 20

2.2 将数字转化为拥有x位小数位的形式 22

2.3 创建受约束的随机数 23

2.4 将数字转换为字符串 24

2.5 格式化货币值 25

2.6 将字符串转换为数字 26

2.7 将数字转换为序数 28

2.8 小结 29

第3章 使用字符串 30

3.1 在字符串中包含特殊字符 30

3.2 处理字符串中的字符 31

3.3 对URL编码 32

3.4 比较字符串 32

3.5 查找字符串中的子串 34

3.6 将字符串拆分成子串 35

3.7 创建正则表达式 36

3.8 测试字符串和正则表达式的匹配 38

3.9 测试字符串是否只包含数字 39

3.10 测试字符串是否是有效的电话号码 40

3.11 测试字符串是否是有效的电子邮件地址 40

3.12 使用正则表达式搜索和替换文本 41

3.13 小结 42

第4章 使用数组 43

4.1 使用数组显式声明 43

4.2 创建数组的数组 44

4.3 使用字符串代替数字做数组索引 46

4.4 将数组转换为字符串 47

4.5 增加和删除数组中的成员 48

4.6 将数组按照字母顺序或者数字顺序排序 50

4.7 对多维数组排序 51

4.8 随机地排序一个数组 52

4.9 小结 52

第5章 导航文档对象模型 53

5.1 访问元素 54

5.2 创建元素节点和文本节点 58

5.3 改变元素的类型 61

5.4 删除一个元素节点或者文本节点 62

5.5 读写元素属性 63

5.6 获得拥有特定属性值的所有元素 65

5.7 元素的class的增减 67

5.8 小结 68

第6章 处理和验证表单 69

6.1 读写文本区的数据 69

6.2 读取和设置checkbox的状态 71

6.3 读写radio按钮的状态 72

6.4 读取和设置select box 74

6.5 验证强制性的文本区 75

6.6 验证数字 75

6.7 验证电子邮件地址 76

6.8 检查未选中的radio按钮 76

6.9 阻止不合法的表单被提交 77

6.10 验证数据项数目不详的表单 78

6.11 验证表单时打印内嵌错误信息 79

6.12 根据其他输入区域的值隐藏和显示某些表单输入区域 80

6.13 小结 83

第7章 窗口和Frame 84

7.1 使用弹出窗口 85

7.1.1 弹出窗口的问题 85

7.1.2 怎样减轻问题的恶劣影响 86

7.2 在新窗口中打开链接 88

7.3 Frame之间的通信 89

7.4 获取滚动位置 91

7.5 滚动页面到特定位置 93

7.6 获得视区的大小(窗口内可用的空间) 93

7.7 小结 94

第8章 cookie 95

8.1 写入cookie 95

8.2 读取cookie 96

8.3 设定cookie的过期时间 97

8.4 使cookie只能通过特定的域和路径访问 98

8.5 突破浏览器对cookie数目的限制 99

8.6 小结 100

第9章 日期和时间 101

9.1 获得日期和时间 101

9.2 自定义Date格式转换 103

9.3 将时间格式化成12小时记法和24小时记法 105

9.4 比较日期 106

9.5 格式化日期间的差异 109

9.6 小结 111

第 10章 图片 112

10.1 图片的预装载 112

10.2 图片的切换 113

10.3 图片的随机显示 115

10.4 多个图片的幻灯片显示效果 117

10.5 图片的淡入淡出效果 119

10.6 基于图片的实时时钟的实现 123

10.7 进度条的实现 126

10.8 小结 128

第 11章 检测浏览器 129

11.1 识别浏览器是否支持某些特性 129

11.2 识别特殊浏览器 131

11.3 检测Quirks模式和标准模式 134

11.4 小结 135

第 12章 在JavaScript中使用CSS 136

12.1 改变单个元素的样式 136

12.2 改变一组元素的样式 138

12.3 获得元素的计算样式 139

12.4 创建样式表转换器 140

12.5 创建处理多媒体类型的样式表转换器 145

12.6 读取和修改已经存在的样式表 147

12.7 添加新的样式表规则 150

12.8 从样式表中删除一个规则 152

12.9 创建一个新的样式表 152

12.10 小结 155

第 13章 动态HTML基础 156

13.1 事件的处理 156

13.1.1 简便方法:使用事件处理函数 157

13.1.2 W3C标准方法:使用事件监听者(Event Listeners) 159

13.2 获取元素尺寸 168

13.3 获取元素位置 169

13.4 检测鼠标光标的位置 171

13.5 当将鼠标放到某个元素上时显示工具提示 172

13.6 根据表的列对表进行排序 178

13.7 小结 183

第 14章 计时器和动画 184

14.1 setTimeout和setInterval的使用 184

14.2 沿着某个确定路径移动对象 187

14.3 创建平滑的动画效果 193

14.3.1 动画帧时间 193

14.3.2 两帧之间移动距离的变化 194

14.3.3 动画效果的复杂度 194

14.3.4 计算机的速度 194

14.3.5 浏览器的速度 195

14.4 拖曳行为的实现 195

14.5 利用拖曳功能对列表重新排序 203

14.6 创建新闻滚动条 209

14.7 创建基于裁剪的过渡效果 214

14.8 创建滑动控制器 219

14.9 小结 224

第 15章 DHTML菜单和导航 225

15.1 创建下拉式菜单或平展式菜单 227

15.2 添加箭头以显示子菜单的存在 235

15.3 添加计时器延迟菜单的开启和关闭 238

15.4 确保菜单一直位于窗口内 243

15.5 菜单显示在select元素之上 249

15.6 创建文件夹树或扩展菜单 255

15.7 在菜单中可扩展分支的指示 263

15.8 任何时候只允许一个菜单分支打开 267

15.9 自动打开当前的子分支 268

15.10 小结 272

第 15章 JavaScript和可用性 273

16.1 JavaScript不具备可用性吗 273

16.1.1 可用性 274

16.1.2 受影响的用户 275

16.2 创建易于用键盘操作的脚本 276

16.3 使用设备无关的事件处理函数 278

16.4 创建键盘和鼠标都能使用的脚本 279

16.4.1 Rollovers与内容的显示 280

16.4.2 表单验证 282

16.4.3 拖放(Drag-and-drop)功能 283

16.4.4 AJAX和其他远程脚本技术 284

16.5 创建显示在焦点上的title属性工具提示 285

16.6 创建可用键盘访问的DHTML菜单 291

16.7 创建通过键盘可用的DHTML菜单 299

16.8 创建可用键盘控制的DHTML滑动控件 305

16.9 创建屏幕读取器可访问的脚本 311

16.9.1 JavaScript行为 313

16.9.2 技巧和深入研究 321

16.9.3 寻求**佳实践 323

16.10 小结 325

第 17章 在JavaScript中使用Flash 326

17.1 检测浏览器是否安装了Flash 326

17.2 JavaScript和Flash之间的沟通 329

17.2.1 FSCommand 330

17.2.2 Flash/JavaScript集成工具包 331

17.3 小结 332

第 18章 使用JavaScript构建Web应用程序 333

18.1 使用XMLHttpRequest获取数据 333

18.1.1 请求服务器上的数据 336

18.1.2 解析数据 337

18.1.3 缓存 338

18.1.4 AJAX框架 339

18.2 不使用XMLHttpRequest获取数据 339

18.3 创建自定义对话框 343

18.4 创建可编辑元素 349

18.5 控制文本选择 354

18.6 创建自动完成的文本域 358

18.7 小结 368

第 19章 JavaScript中的面向对象技术 369

19.1 面向对象技术的优点 369

19.1.1 抽象性 370

19.1.2 封装性 370

19.1.3 类的继承 370

19.1.4 多态 371

19.2 基于对象的代码与面向对象的代码 372

19.3 创建一个面向对象的脚本 372

19.4 为对象创建方法 373

19.5 模拟继承 377

19.6 理解作用域(Scope) 379

19.7 命名空间的实现 381

19.8 小结 382

第 20章 高级话题 383

20.1 使脚本运行得更快 383

20.1.1 减少常用对象的引用 384

20.1.2 使用三元操作符以及switch语句 386

20.1.3 优化循环 388

20.1.4 避免使用eval 389

20.1.5 避免严格警告的出现 390

20.1.6 为特定浏览器进行优化 390

20.2 减小脚本的代码量 393

20.2.1 将任务划分为函数(使用面向对象思想) 393

20.2.2 使用数组和循环以避免代码的重复 394

20.2.3 使用简洁的条件和返回语句 395

20.3 为Web优化脚本 396

20.3.1 去掉注释和不必要的空白符 396

20.3.2 使变量名和属性名简洁化 398

20.4 避免内存泄漏 399

20.4.1 避免循环引用 399

20.4.2 在使用之后进行清理 400

20.5 使脚本在Load事件之前运行 402

20.6 小结 404

详情

本书主要介绍JavaScript应用中一些常见的问题及其解决方法,从最基础的数字、字符串、数组到进阶的dom、表单验证、cookie,再到较为高级的Ajax,书中均有涉及。

图书摘要

相关图书

深入浅出Spring Boot 3.x
深入浅出Spring Boot 3.x
JavaScript核心原理:规范、逻辑与设计
JavaScript核心原理:规范、逻辑与设计
JavaScript入门经典(第7版)
JavaScript入门经典(第7版)
JavaScript函数式编程指南
JavaScript函数式编程指南
PHP、MySQL和JavaScript入门经典(第6版)
PHP、MySQL和JavaScript入门经典(第6版)
JavaScript学习指南(第3版)
JavaScript学习指南(第3版)

相关文章

相关课程