JavaScript是Web开发中最重要的一门语言,它强大而优美。无论是桌面开发,还是移动应用。JavaScript都是必须掌握的技术。W3C的DOM标准是开发Web应用的基石。已经得到所有现代浏览器的支持,这使得跨平台Web开发成了一件轻松惬意的事。
本书是超级畅销书的升级版,由倡导Web标准的领军人物执笔,揭示了前端开发的真谛,是学习JavaScript和DOM开发的必读之作。
本 书在简洁明快地讲述JavaScript和DOM的基本知识之后,通过几个实例演示了专业水准的网页开发技术,透彻阐述了平稳退化等一批至关重要的 JavaScript编程原则和最佳实践,并全面探讨了HTML5以及jQuery等JavaScript库。读者将看到JavaScript、 HTML5和CSS如何协作来创建易用的、与标准兼容的Web设计,掌握使用JavaScript和DOM通过客户端动态效果和用户控制的动画来加强 Web页面的必备技术;同时,还将对如何利用库提高开发效率有全面深入的理解。
......(更多)
Jeremy Keith 国际知名的Web设计师,Web标准项目组成员,DOM Scripting任务组负责人之一,任职于Web咨询公司Clearleft。除本书外,还著有HTML5 for Web Designers、Bulletproof Ajax。可通过其个人网站adactio.com与他联系。
Jeffrey Sambells 资深平面设计师,Web开发人员,创办了软件公司We-Create并担任研发总监。除本书外,还著有《JavaScript高级程序设计》和 Beginning Google Maps Applications with PHP and Ajax等多部畅销书。
......(更多)
第1章 JavaScript简史 1
1.1 JavaScript的起源 1
1.2 DOM 2
1.3 浏览器战争 3
1.3.1 DHTML 3
1.3.2 浏览器之间的冲突 3
1.4 制定标准 4
1.4.1 浏览器以外的考虑 4
1.4.2 浏览器战争的结局 5
1.4.3 崭新的起点 5
1.5 小结 6
第2章 JavaScript语法 8
2.1 准备工作 8
2.2 语法 10
2.2.1 语句 10
2.2.2 注释 10
2.2.3 变量 11
2.2.4 数据类型 14
2.2.5 数组 16
2.2.6 对象 18
2.3 操作 19
2.4 条件语句 21
2.4.1 比较操作符 22
2.4.2 逻辑操作符 23
2.5 循环语句 24
2.5.1 while循环 24
2.5.2 for循环 25
2.6 函数 26
2.7 对象 29
2.7.1 内建对象 30
2.7.2 宿主对象 31
2.8 小结 31
第3章 DOM 32
3.1 文档:DOM中的“D” 32
3.2 对象:DOM中的“O” 32
3.3 模型:DOM中的“M” 33
3.4 节点 35
3.4.1 元素节点 35
3.4.2 文本节点 35
3.4.3 属性节点 36
3.4.4 CSS 36
3.4.5 获取元素 38
3.4.6 盘点知识点 42
3.5 获取和设置属性 43
3.5.1 getAttribute 43
3.5.2 setAttribute 44
3.6 小结 45
第4章 案例研究:JavaScript图片库 46
4.1 标记 46
4.2 JavaScript 48
4.2.1 非DOM解决方案 49
4.2.2 最终的函数代码清单 50
4.3 应用这个JavaScript函数 50
4.4 对这个函数进行扩展 52
4.4.1 childNodes属性 53
4.4.2 nodeType属性 54
4.4.3 在标记里增加一段描述 54
4.4.4 用JavaScript改变这段描述 55
4.4.5 nodeValue属性 56
4.4.6 firstChild和lastChild属性 56
4.4.7 利用nodeValue属性刷新这段描述 57
4.5 小结 60
第5章 最佳实践 61
5.1 过去的错误 61
5.1.1 不要怪罪JavaScript 61
5.1.2 Flash的遭遇 62
5.1.3 质疑一切 63
5.2 平稳退化 63
5.2.1 “javascript:”伪协议 64
5.2.2 内嵌的事件处理函数 65
5.2.3 谁关心这个 65
5.3 向CSS学习 66
5.3.1 结构与样式的分离 66
5.3.2 渐进增强 67
5.4 分离JavaScript 68
5.5 向后兼容 70
5.5.1 对象检测 70
5.5.2 浏览器嗅探技术 71
5.6 性能考虑 72
5.6.1 尽量少访问DOM和尽量减少标记 72
5.6.2 合并和放置脚本 73
5.6.3 压缩脚本 73
5.7 小结 74
第6章 案例研究:图片库改进版 75
6.1 快速回顾 75
6.2 它支持平稳退化吗 76
6.3 它的JavaScript与HTML标记是分离的吗 77
6.3.1 添加事件处理函数 77
6.3.2 共享onload事件 82
6.4 不要做太多的假设 84
6.5 优化 86
6.6 键盘访问 88
6.7 把JavaScript与CSS结合起来 90
6.8 DOM Core和HTML-DOM 93
6.9 小结 94
第7章 动态创建标记 96
7.1 一些传统方法 96
7.1.1 document.write 96
7.1.2 innerHTML属性 98
7.2 DOM方法 101
7.2.1 createElement方法 101
7.2.2 appendChild方法 102
7.2.3 createTextNode方法 103
7.2.4 一个更复杂的组合 105
7.3 重回图片库 107
7.3.1 在已有元素前插入一个新元素 108
7.3.2 在现有方法后插入一个新元素 109
7.3.3 图片库二次改进版 111
7.4 Ajax 114
7.4.1 XMLHttpRequest对象 115
7.4.2 渐进增强与Ajax 119
7.4.3 Hijax 120
7.5 小结 121
第8章 充实文档的内容 122
8.1 不应该做什么 122
8.2 把“不可见”变成“可见” 123
8.3 内容 123
8.3.1 选用HTML、XHTML还是HTML5 124
8.3.2 CSS 126
8.3.3 JavaScript 127
8.4 显示“缩略语列表” 127
8.4.1 编写displayAbbreviations函数 128
8.4.2 创建标记 130
8.4.3 一个浏览器“地雷” 135
8.5 显示“文献来源链接表” 138
8.6 显示“快捷键清单” 143
8.7 检索和添加信息 146
8.8 小结 147
第9章 CSS-DOM 148
9.1 三位一体的网页 148
9.1.1 结构层 148
9.1.2 表示层 148
9.1.3 行为层 149
9.1.4 分离 150
9.2 style属性 150
9.2.1 获取样式 151
9.2.2 设置样式 156
9.3 何时该用DOM脚本设置样式 158
9.3.1 根据元素在节点树里的位置来设置样式 158
9.3.2 根据某种条件反复设置某种样式 161
9.3.3 响应事件 165
9.4 className属性 167
9.5 小结 171
第10章 用JavaScript实现动画效果 172
10.1 动画基础知识 172
10.1.1 位置 172
10.1.2 时间 175
10.1.3 时间递增量 175
10.1.4 抽象 178
10.2 实用的动画 184
10.2.1 提出问题 184
10.2.2 解决问题 186
10.2.3 CSS 187
10.2.4 JavaScript 189
10.2.5 变量作用域问题 192
10.2.6 改进动画效果 193
10.2.7 添加安全检查 196
10.2.8 生成HTML标记 198
10.3 小结 200
第11章 HTML5 201
11.1 HTML5简介 201
11.2 来自朋友的忠告 203
11.3 几个示例 204
11.3.1 Canvas 205
11.3.2 音频和视频 209
11.3.3 表单 215
11.4 HTML5还有其他特性吗 219
11.5 小结 219
第12章 综合示例 220
12.1 项目简介 220
12.1.1 原始资料 220
12.1.2 站点结构 220
12.1.3 页面结构 221
12.2 设计 222
12.3 CSS 223
12.3.1 颜色 225
12.3.2 布局 226
12.3.3 版式 228
12.4 标记 229
12.5 JavaScript 230
12.5.1 页面突出显示 231
12.5.2 JavaScript幻灯片 235
12.5.3 内部导航 239
12.5.4 JavaScript图片库 242
12.5.5 增强表格 245
12.5.6 增强表单 249
12.5.7 压缩代码 263
12.6 小结 264
附录 JavaScript库 265
......(更多)
文档的每个元素节点都有一个style属性。style属性包含元素的样式信息,查询该信息将返回一个对象而不是一个简单的字符串。样式信息都存放在这个对象的属性里。
DOM是一种适用于多种环境和多种程序设计语言的通用型API。如果想把从本书学到的DOM技巧运用在web浏览器以外的应用环境里,严格遵守"第一级DOM"能避免与兼容性相关的任何问题
......(更多)