注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计JAVA及其相关JavaScript学习宝典(第2版)

JavaScript学习宝典(第2版)

JavaScript学习宝典(第2版)

定 价:¥58.00

作 者: (美)邵(Thau,D.) 著;李丽,李松峰 译
出版社: 清华大学出版社
丛编项:
标 签: J2EE

购买这本书可以去


ISBN: 9787302181132 出版时间: 2008-09-01 包装: 平装
开本: 16开 页数: 464 字数:  

内容简介

  本书是Web开发人员学习JavaScript技术的优秀教程,得到Web开发社区的广泛好评,同时还得到Ajax先驱Jesse James Garrett的高度评价和推荐!本书作者以实例分析为出发点,带领读者循序渐进地理解每一个脚本,并耐心解释实现期望效果的过程,可帮助读者全面掌握JavaScript技术,把自己平淡无奇的网站打扮得光彩照人。本书的配套网站提供了书中的所有示例代码、图像、习题答案、用于复杂应用程序的脚本库,以及各种实用软件工具,大大提高了读者的学习效率。

作者简介

  Thau,从1993年起致力于Internet应用程序的开发,创建了Internet上第一个基于Web的社区bianca.com。他是Wired Digital公司的软件工程总监和高级科学家,曾向数百名艺术家、工程师传授程序设计语言知识。目前,他正致力于创建供人们研究生物多样性的数据共享平台,同时在加州大学 Davis分校攻读计算机科学方向的博士学位。

图书目录

第1章 JavaScript入门 1
1.1 JavaScript适合你吗 1
1.2 本书适合你吗 2
1.3 本书的目标 2
1.4 JavaScript能做什么 3
1.5 JavaScript的替代技术 4
1.5.1 CGI脚本 5
1.5.2 VBScript 6
1.5.3 Java 6
1.5.4 Flash 6
1.6 JavaScript的局限性 7
1.6.1 JavaScript无法与服务器对话 7
1.6.2 JavaScript不能创建图形 7
1.6.3 JavaScript在不同的浏览器中存在差异 7
1.7 新手上路 8
1.8 把JavaScript脚本放在网页中的什么地方 8
1.9 处理老式浏览器 10
1.10 第一个JavaScript程序 11
1.11 小结 12
1.12 习题 12
第2章 使用变量和内置函数自动更新网页 13
2.1 存储信息的变量 14
2.1.1 变量的语法 14
2.1.2 变量的命名 15
2.1.3 通过变量做算术 16
2.2 显示结果 16
2.3 字符串 18
2.4 再谈函数 19
2.4.1 alert() 19
2.4.2 图2-9的逐行分析 21
2.4.3 prompt() 21
2.5 参数 23
2.6 向网页中写入日期 23
2.6.1 内置的Date函数 24
2.6.2 日期和时间方法 24
2.6.3 写入日期和时间的代码 25
2.6.4 图 2-12的逐行分析 26
2.7 欧洲航天局如何向主页中写入日期 28
2.8 小结 28
2.9 习题 29
第3章 满足浏览器的需要 31
3.1 浏览器检测实例 31
3.2 检测浏览器的方法 33
3.2.1 快捷但粗糙的浏览器检测 33
3.2.2 更精确的浏览器检测 34
3.3 把访客重定向到其他网页 35
3.4 if-then语句 36
3.4.1 布尔表达式 36
3.4.2 嵌套 38
3.4.3 if-then-else语句 38
3.4.4 if-then-else-if语句 39
3.4.5 花括号应该何时用在何处 39
3.5 OR和AND操作符 41
3.5.1 OR操作符 41
3.5.2 AND操作符 43
3.6 综合起来 43
3.7 有关布尔表达式的一些细节 45
3.8 Netscape网站如何提供针对浏览器的内容 46
3.9 小结 48
3.10 习题 48
第4章 制作翻转图 49
4.1 一个真实的翻转图 49
4.2 触发事件 51
4.2.1 事件类型 51
4.2.2 JavaScript中的引号 53
4.2.3 单击链接而不离开当前页面 54
4.2.4 更多有意思的操作 55
4.3 替换图像 55
4.4 操纵多幅图像 56
4.5 句点的作用是什么 57
4.5.1 document对象 58
4.5.2 对象的属性 59
4.5.3 实现翻转效果 59
4.5.4 图像预载 60
4.6 Tin House网站翻转图的工作原理 61
4.7 小结 62
4.8 习题 62
第5章 打开和操纵窗口 63
5.1 打开窗口查看补充信息的真实例子 63
5.2 操纵作为对象的窗口 65
5.3 打开窗口 65
5.3.1 操纵新窗口的外观 65
5.3.2 某些浏览器和计算机会以不同方式打开窗口 68
5.4 关闭窗口 68
5.5 正确地命名:窗口如何识别自己和其他窗口 69
5.6 隐藏或显示窗口 69
5.7 窗口的属性 70
5.7.1 status属性 70
5.7.2 opener属性 71
5.8 其他window对象的方法 73
5.8.1 缩放窗口 73
5.8.2 移动窗口 73
5.9 小结 75
5.10 习题 76
第6章 编写自己的JavaScript函数 79
6.1 函数简化操作 79
6.1.1 JavaScript函数的基本结构 80
6.1.2 函数的命名 80
6.1.3 圆括号和花括号 81
6.1.4 一个简单的函数 81
6.2 编写灵活的函数 82
6.2.1 使用参数 82
6.2.2 图6-4的逐行分析 83
6.2.3 使用多个参数 85
6.3 从函数中取得信息 87
6.4 处理Y2K问题 88
6.5 适当地定义变量 90
6.6 小结 92
6.7 习题 92
第7章 通过表单提供和接收信息 95
7.1 表单的应用实例 95
7.2 表单基础 97
7.2.1 文本输入框 98
7.2.2 按钮. 复选框和单选按钮 98
7.2.3 选择元素 100
7.2.4 文本区 101
7.2.5 表单元素小结 102
7.3 表单和JavaScript 102
7.3.1 命名表单元素 102
7.3.2 命名单选按钮 103
7.3.3 命名选项 104
7.4 读取和设置表单元素 104
7.4.1 从文本框中读取信息 104
7.4.2 设置文本框的值 106
7.4.3 文本区 107
7.4.4 复选框 107
7.4.5 单选按钮 110
7.4.6 下拉菜单和滚动列表 110
7.5 通过表单元素处理事件 111
7.6 缩短引用 113
7.7 将下拉菜单作为导航工具 113
7.8 最后一个表单简写形式 114
7.9 Doctors Without Borders网站中下拉菜单导航工具的工作原理 116
7.10 小结 116
7.11 习题 117
第8章 通过数组和循环记录信息 119
8.1 有关数组的实例 119
8.2 JavaScript的内置数组 120
8.3 数组中包含多少个项目 122
8.4 遍历数组 122
8.5 while循环 124
8.5.1 while循环和数组 125
8.5.2 不要草率行事 126
8.5.3 在循环中使用array.length 126
8.5.4 递增的简写 127
8.5.5 小心无限循环 127
8.6 for循环 127
8.7 AntWeb如何选中所有复选框 128
8.8 创建你自己的数组 130
8.9 本书网站中提示框的工作原理 131
8.9.1 检查空句 132
8.9.2 检查数组中的最后一个元素 133
8.9.3 测试数组的极限 133
8.9.4 startScroll()函数 133
8.9.5 简化版 134
8.10 循环可以嵌套 135
8.11 逐个创建数组元素 136
8.12 关联数组 137
8.13 小结 140
8.14 习题 140
第9章 计时事件 143
9.1 计时事件的实例 143
9.2 通过setTimeout()设置警报 144
9.3 通过clearTimeout()取消警报 145
9.4 重复计时操作 146
9.4.1 图9-5的逐行分析 148
9.4.2 对表单元素使用parseInt() 148
9.4.3 在设置新计时之前清除计时 149
9.4.4 在函数外部声明保存计时的变量 149
9.5 通过计时循环构建一个时钟 149
9.6 本书网站中计时器的工作原理 151
9.7 Space.com中倒计时脚本的工作原理 153
9.7.1 计算时间 155
9.7.2 全局变量和常量 156
9.8 计时播放的幻灯片 156
9.9 更安全的rotateImage()函数 158
9.9.1 为什么在函数外部声明变量不安全 158
9.9.2 为什么不能在计时循环中使用var 159
9.9.3 解决方案 159
9.9.4 障碍 160
9.9.5 对障碍的解决方案 161
9.9.6 为什么在rotateImage()函数外部声明the_images 161
9.10 小结 162
9.11 习题 162
第10章 使用框架和图像地图 163
10.1 框架和图像地图的实例 163
10.2 框架 164
10.2.1 框架基础 164
10.2.2 框架和JavaScript .. 166
10.2.3 框架和图像替换 167
10.2.4 一次修改两个框架的内容 170
10.2.5 框架内部的框架 171
10.2.6 JavaScript和框架内部的框架 173
10.2.7 摆脱框架 173
10.2.8 使用框架保存信息 174
10.2.9 图10-15的逐行分析 177
10.3 图像地图 178
10.3.1 图像地图基础 179
10.3.2 图像地图和JavaScript 180
10.4 Salon中昆虫大餐脚本的工作原理 180
10.4.1 Salon的嵌套框架 182
10.4.2 Salon的图像地图 182
10.4.3 changeMe()函数 182
10.5 小结 183
10.6 习题 183
第11章 验证表单. 消息字符串及与服务器端程序协作 185
11.1 表单验证的实例 185
11.2 确保访客填写了一个表单元素 186
11.3 字符串处理 190
11.3.1 分解字符串 190
11.3.2 通过正则表达式匹配字符串模式 196
11.4 Dictionary.com表单验证程序的工作原理 200
11.5 小结 206
11.6 习题 206
第12章 通过cookie保存访客信息 209
12.1 使用cookie的实例 210
12.2 什么是cookie 210
12.3 cookie能做什么, 不能做什么 211
12.4 操纵cookie 212
12.4.1 设置cookie 212
12.4.2 读取cookie 212
12.4.3 重置cookie 213
12.4.4 设置多段信息 214
12.4.5 设置cookie的有效时间 216
12.4.6 谁能读取cookie 218
12.4.7 完整的cookie 218
12.4.8 设置多个cookie 219
12.5 cookie库 219
12.6 基于cookie的购物车 220
12.6.1 向购物车中添加项目 221
12.6.2 结账页面 223
12.6.3 readTheCookie()函数 225
12.6.4 checkOut()函数 226
12.7 小结 226
12.8 习题 227
第13章 DHTML 229
13.1 DHTML实例 229
13.2 CSS基础 230
13.2.1 标记 230
13.2.2 通过CSS定位div 231
13.2.3 隐藏div 233
13.2.4 层叠div 233
13.3 JavaScript和DHTML 234
13.4 让div移动 235
13.5 使用setTimeout()和clearTimeout()方法为页面添加动画 235
13.6 改变div的内容 237
13.7 span标记和getElementsByTagName() 238
13.8 高级DOM技术 241
13.8.1 W3C DOM简介 241
13.8.2 使用W3C DOM方法创建和添加元素 242
13.8.3 向元素中添加文本 242
13.8.4 在页面中间添加元素和删除元素 243
13.8.5 更多的DOM细节信息 245
13.8.6 使用DOM操作页面 246
13.9 高级事件处理 246
13.9.1 事件对象 247
13.9.2 使用JavaScript添加事件处理程序 250
13.10 下拉菜单 253
13.10.1 图13-23的逐行分析 255
13.10.2 边框 255
13.11 小结 255
13.12 习题 256
第14章 AJAX基础 257
14.1 Ajax的实例 257
14.2 Ajax概述 258
14.2.1 异步——Ajax中的A 260
14.2.2 XML——Ajax中的X 260
14.2.3 JavaScript——Ajax中的J 260
14.3 创建和发送请求 260
14.3.1 创建请求对象 261
14.3.2 告诉请求对象向哪里发送请求 261
14.3.3 当请求响应时做什么 262
14.3.4 编写在请求响应后被调用的JavaScript 263
14.3.5 发送请求 263
14.3.6 组合起来 264
14.3.7 取得结果 265
14.4 示范异步性 265
14.5 Ajax和可用性 269
14.5.1 后退按钮 269
14.5.2 URL和书签 269
14.5.3 乏味的设计 269
14.6 使用Ajax, 或者不用Ajax 270
14.6.1 坏:只因为你会 270
14.6.2 坏:它是一种热门的新事物 270
14.6.3 坏:使用新的模糊的手段取代有效的手段 270
14.6.4 好:环境内的数据操作 270
14.6.5 好:交互式部件 271
14.6.6 好:保存状态 271
14.7 小结 271
14.8 习题 271
第15章 JavaScript和Ajax中的XML 273
15.1 Ajax和XML的实例 273
15.2 Google Suggest 275
15.3 XML 276
15.4 XML的规则 277
15.4.1 XML标题 277
15.4.2 XML元素 278
15.4.3 XML属性 278
15.4.4 不合法的XML字符 278
15.4.5 XML文档只有一个根元素 279
15.4.6 对XML格式的最后说明 279
15.5 处理XML 279
15.5.1 图15-6的逐行分析 281
15.5.2 Internet Explorer. responseXML和客户端Ajax 285
15.5.3 XML中空格的问题 285
15.6 创建翻译建议应用程序 286
15.6.1 查找翻译 287
15.6.2 显示结果 289
15.7 小结 290
15.8 习题 290
第16章 服务器端Ajax 293
16.1 服务器端Ajax的实例 293
16.2 Web服务器的能力 295
16.3 服务器端编程语言 297
16.4 PHP基础 297
16.5 通过GET请求向PHP发送简单的输入 298
16.5.1 在URL中传递输入 299
16.5.2 用PHP读取GET请求中的输入 300
16.6 使用Ajax的GET请求创建Google Suggest应用程序 301
16.6.1 使用Ajax和PHP联系第三方Web服务器 302
16.6.2 定制的Google Suggest应用程序的JavaScript部分 302
16.6.3 使用PHP联络其他Web服务器 306
16.7 Ajax和POST方法 307
16.7.1 适合Ajax的表单 308
16.7.2 通过Ajax发送POST请求 309
16.7.3 从浏览器向Web服务器发送XML信息 311
16.8 HEAD请求:取得与服务器端文件有关的信息 311
16.8.1 为响应添加头部信息 312
16.8.2 头部与XML 312
16.9 缓存问题 313
16.10 PHP中的文件处理 313
16.10.1 通过PHP为文本文件创建和添加内容 313
16.10.2 在PHP中读取文件 314
16.11 如何应对通信中断 315
16.12 当服务器端文件改变时自动更新网页 317
16.12.1 readFileDoFunction() 319
16.12.2 callReadFile() 319
16.12.3 callUpdateIfChanged() 320
16.12.4 stopTimer() 320
16.12.5 回顾与引申 320
16.12.6 服务器端PHP代码 320
16.13 小结 321
16.14 习题 321
第17章 综合应用实例:共享的To Do列表 323
17.1 To Do列表应用程序的功能 323
17.2 To Do列表的数据文件 326
17.2.1 userInfo.xml 326
17.2.2 To Do列表文件 327
17.3 To Do列表的服务器端 328
17.4 To Do列表的客户端, 第1部分:HTML 329
17.5 To Do列表的客户端, 第2部分:JavaScript 330
17.5.1 函数的路线图 331
17.5.2 登录或退出应用程序 331
17.5.3 与登录相关的函数 333
17.5.4 辅助函数 335
17.5.5 显示可用的列表 337
17.5.6 显示特定的列表 340
17.5.7 处理对列表的修改 344
17.5.8 操纵XML文档的限制 347
17.5.9 添加新条目 349
17.6 简短的结束语 350
17.6.1 客户端代码还是服务器端代码 351
17.6.2 安全问题 351
17.7 小结 352
17.8 习题 353
第18章 调试JavaScript和Ajax 355
18.1 良好的编程习惯 355
18.1.1 从注释开始 356
18.1.2 填充代码 356
18.2 避免常见的错误 357
18.2.1 使用一致的命名约定 357
18.2.2 避免使用保留字 357
18.2.3 别忘了在逻辑测试中使用两个等号 358
18.2.4 正确地使用引号 358
18.3 发现bug 359
18.3.1 通过alert()语句输出变量 359
18.3.2 除alert()之外的调试手段 360
18.3.3 使用浏览器的bug检测程序 362
18.3.4 使用JavaScript调试程序 362
18.3.5 在Firefox 1.5和2.0中调试Ajax 366
18.3.6 其他调试资源 367
18.4 修改bug 368
18.4.1 备份程序 368
18.4.2 一次修改一个bug 368
18.4.3 避免巫毒编程 369
18.4.4 查找类似的bug 369
18.4.5 保持头脑清醒 369
18.4.6 寻求帮助 369
18.5 小结 370
附录A 习题答案 371
附录B 学习资源 397
附录C JavaScript对象和函数参考 403
附录D 第15章的意大利语翻译程序和第17章的To Do列表应用程序

本目录推荐