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

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证