第1部分 最佳实践
第1章 构建牢固的基础
1.1 最佳实践概述
1.1.1 确认最佳实践的最佳性的人员
1.1.2 可以从最佳实践中受益的人群
1.2 常规最佳实践
1.2.1 定义项目目标
1.2.2 掌握基本规则
1.3 标记语言最佳实践:语义HTML
1.3.1 学习HTML标签
1.3.2 从文档类型定义开始
1.3.3 XHTML扩展HTML的方式
1.3.4 实际使用最佳实践
1.3.5 Web内容的可访问性指导原则
1.4 格式化最佳实践:CSS
1.4.1 像素完美再现设计的相关内容
1.4.2 W3C CSS标准
1.4.3 样式表的指导原则
1.4.4 样式的可访问性指导原则
1.4.5 注释块
1.4.6 浏览器迂回方法
1.4.7 本地化考虑事项
1.5 结构化文件夹、文件和有价值资源
1.5.1 易于阅读的URL
1.5.2 文件和文件夹命名
1.5.3 文件编码
1.5.4 组织有价值资源
1.6 设置开发环境
1.6.1 编写文件:集成开发环境
1.6.2 存储文件:版本控制系统
1.6.3 测试页面:浏览器和开发工具
1.7 本章小结
第2章 面向富互联网应用程序的JavaScript
2.1 编码风格指导原则
2.1.1 使用一致的格式
2.1.2 使用大括号和圆括号
2.1.3 使用字母大小写来增加含义
2.1.4 使用描述性的变量和函数名
2.1.5 维护简短的函数块
2.1.6 使用Script Doc将注释变为评注
2.1.7 使用FODO标记剩余的工作
2.2 专业水准的Java Script编程
2.2.1 避免解决不存在的问题
2.2.2 使用文档对象模型
2.2.3 动态更改CSS属性
2.2.4 操作元素及其内容
2.2.5 不要将JavaScript和HTML,混合
2.2.6 将样式与代码分离
2.2.7 链接函数调用
2.2.8 编写健壮的代码
2.2.9 记住对代码进行本地化
2.3 面向对象的JavaScript
2.3.1 对象、类和构造函数
2.3.2 继承:从现有的类创建新类
2.3.3 this关键字
2.3.4 访问属性和方法
2.3.5 对象字面值和JavaScript对标记
2.3.6 创建名称空间和层次结构
2.4 库和架构
2.4.1 选择库
2.4.2 构建JavaScript库
2.5 构建RJA
2.5.1 构造应用程序
2.5.2 管理两组HFML
2.5.3 使用设计模式
2.6 测试和测试驱动的开发
2.7 使用第三方脚本
2.8 本章小结
第Ⅱ部分 性能
第3章 理解Web浏览器
3.1 引擎:浏览器的动力室
3.1.1 呈现引擎和,JavaScript引擎
3.1.2 JavaScript引擎的性能基准测试
3.2 Web页面请求剖析
3.2.1 HTTP:Web背后的通信标准
3.2.2 HTTP状态码
3.2.3 消息的传输机制
3.2.4 HFML页面的加载顺序
3.3 页面性能
3.3.1 查看页面的性能
3.3.2 找出性能的潜在瓶颈
3.4 本章小结
第4章 性能调整
4.1 性能是否确实是问题
4.2 对Web服务器进行调整以获得出色性能
4.2.1 对外部资源使用单独域名
4.2.2 使用内容分发网络
4.2.3 以数据块方式将H刑L文件发送给浏览器
4.2.4 定制HTTP头部以驱动浏览器缓存
4.2.5 压缩服务器的输出
4.3 对HTML页面进行调整以获得出色性能
4.3.1 利用HTMI。Tidy程序缩小HTIVIL,文件的大小
4.3.2 在HTML,代码的结束处引用JavaScript文件
4.3.3 减少HTTP请求的数量
4.3.4 不要加载来自主页的每个资源
4.3.5 减少域名查找次数
4.3.6 跨域对组件进行拆分
4.3.7 避免链接到重定向
4.3.8 减少HTML元素的数量
4.3.9 不要链接至不存在的文件
4.3.10 缩小HTTP COOkie的大小
4.4 对样式表进行调整以获得出色性能
4.4.1 使用CSSTidy工具压缩CSS文件
4.4.2 不要使用@import命令
4.4.3 提高表布局的效率
4.4.4 在IE中避免使用CSS过滤器和表达式
4.4.5 使用简码值
4.4.6 使用CSS Sprite技术
4.4.7 避免低效的CSS选择器
4.5 对图像进行调整以获得出色性能
4.5.1 理解图像格式
4.5.2 优化PNG图像
4.5.3 不要忘记falvicon
4.6 对JavaScript代码进行调整以获得出色性能
4.6.1 使用Dojo ShdnkSafe压缩JavaScript文件
4.6.2 通过内容分发网络访问Java Script库
4.6.3 时机就是一切
4.6.4 提升核心的Java ScriDt性能
4.6.5 提高Ajax性能
4.6.6 提高DOM性能
4.7 本章小结
第5章 欺骗性行为:可感知的响应性
5.1 提供快速的视觉反馈
5.1.1 选择正确的时机
5.1.2 对超链接使用CSS伪类
5.1.3 让用户知道表单正在提交
5.1.4 更改鼠标指针
5.1.5 使用Web 2.0样式动画指示器
5.1.6 显示进度条
5.2 处理运行时间长的脚本
5.2.1 将运行时间长的脚本分割为代码块
5.2.2 使用定时器多次运行代码块
5.3 预测网站访问者的需求
5.3.1 预先加载内容
5.3.2 高效加载导航层次
5.3.3 提前捕捉鼠标单击事件
5.4 本章小结
第Ⅲ部分 表现
第6章 美丽的印刷字体
6.1 面临的挑战
6.2 字体的基本结构
6.3 给文本使用静态图像
6.4 为文本动态生成图像
6.4.1 使用CSS直接嵌入字体文件
6.4.2 让服务器生成文本图像
6.4.3 使用Flash生成使用自定义字体的文本
6.4.4 使用矢量图生成文本
6.5 使用可重用的自定义字体组件
6.5.1 Text2PNG。
6.5.2 Scalable Inman Flash Replacement组件
6.5.3 Facelift Image I沁placement组件
6.5.4 Typeface js组件
6.6 本章小结
第7章 多媒体回放
7.1 处理可访问性
7.2 使用可重用的音频回放组件
7.2.1 SoundManager组件
7.2.2 在没有Flash的浏览器中播放音频文件
7.3 使用可重用的视频回放组件
7.3.1 You Tube Chromeless Player
7.3.2 JW FLV Player.
7.4 展望:HTML 5中的音频和视频
7.4.1
和标签 7.4.2 Java Script APL 7.4.3 当前采用情况 7.5 本章小结 第8章 表单控件 8.1 自定义现有表单控件 8.1.1 按钮 8.1.2 文本字段 8.1.3 文件上传控件 8.2 添加新型表单控件 8.2.1 用于日期选择的日历构件 8.2.2 滑块控件 8.3 使用可重用的表单组件 8.3.1 SWFU pload包含进度条的多文件上传 8.3.2 TnyMCE:富文本编辑 8.4 验证表单 8.5 本章小结 第9章 脱机存储 9.1 使用cookie保存数据 9.1.1 创建cookie 9.1.2 cookie的不足之处 9.2 使用Intemet Explorei的数据存储 9.3 数据存储API简介 9.3.1 本地存储APL 9.3.2 Mozilla的全局存储API 9.3.3 客户端数据库存储API 9.4 使用Flas11共享对象保存数据 9.5 创建跨浏览器的本地数据存储API 9.6 使用可重用的脱机存储组件 9.7 本章小结 第10章 二进制Ajax 10.1 纯文本文件与二进制文件 10.2 使用Ajax读取二进制文件 10.3 从照片文件中提取图像数据 10.3.1 理解EXIF格式 10.3.2 使用JavaScript读取EXI[}数据 10.3.3 显示文件的EXIF数据 10.4 本章小结 第11章 在浏览器中绘制 11.1 创建可缩放矢量图 11.1.1 仓II律SVG图像文件 11.1.2 在HTML中指定SVG 11.1.3 通过JavaScript指定SVG 11.2 使用矢量标记语言绘制 11.3 使用可重用绘图库构建动态图形 11.4 使用HTML5标签 11.5 本章小结 第12章 富互联网应用程序的可访问性 12.1 迎合需求的用户 12.1.1 使用辅助技术的用户 12.1.2 移动设备用户 12.1.3 不使用鼠标的用户 12.1.4 面向所有用户的可访问性 12.2 恰当地使用前进以及后退按钮导航 12.3 设备无关的JavaScript 12.3.1 设备无关事件 12.3.2 设备无关事件委托 12.3.3 已更新内容提示以及焦点 12.4. Web页面可访问性倡议——无障碍富互联网应用程序 12.4.1 角色 12.4.2 状态以及特性 12.4.3 焦点管理 12.4.4 使用键盘与ARIA构件交互 12.4.5 WAJ.ARIA示例 12.4.6 验证 12.4.7 测试 12.5 本章小结
展开