高性能标准网站建设进阶指南目录
时间:2023-02-17 22:18:01 | 来源:营销百科
时间:2023-02-17 22:18:01 来源:营销百科
高性能标准网站建设进阶指南目录:致谢 i
前言 iii
第1章:理解ajax性能 1
1 1 权衡 1
1 2 优化原则 2
1 3 ajax 4
1 4 浏览器 4
1 5 哇! 5
1 6 javascript 6
1 7 总结 6
第2章:创建快速响应的web应用 7
2 1 怎样才算足够快 9
2 2 测量延迟时间 10
2 2 1 当延迟变得很严重时 12
2 3 线程处理 12
2 4 确保响应速度 13
2 4 1 web workers 14
2 4 2 gears 14
2 4 3 定时器 16
2 4 4 内存使用对响应时间的影响 17
2 4 5 虚拟内存 18
2 4 6 内存问题的疑难解答 18
2 5 总结 19
第3章:拆分初始化负载 21
3 1 全部加载 21
3 2 通过拆分来节省下载量 22
3 3 寻找拆分 23
3 4 未定义标识符和竞争状态 24
3 5 个案研究:google日历 25
第4章:无阻塞加载脚本 27
4 1 脚本阻塞并行下载 27
4 2 让脚本运行得更好 29
4 2 1 xhr eval 29
4 2 2 xhr注入 31
4 2 3 script in iframe 31
4 2 4 script dom element 32
4 2 5 script defer 32
4 2 6 document write script tag 33
4 3 浏览器忙指示器 33
4 4 确保(或避免)按顺序执行 35
4 5 汇总结果 36
4 6 最佳方案 38
第5章:整合异步脚本 41
5 1 代码示例:menu js 42
5 2 竞争状态 44
5 3 异步加载脚本时保持执行顺序 45
5 3 1 技术1:硬编码回调(hardcoded callback) 46
5 3 2 技术2:window onload 47
5 3 3 技术3:定时器(timer) 48
5 3 4 技术4:script onload 49
5 3 5 技术5:降级使用script标签(degrading script tags) 50
5 4 多个外部脚本 52
5 4 1 managed xhr 52
5 4 2 dom element和doc write 56
5 5 综合解决方案 59
5 5 1 单个脚本 59
5 5 2 多个脚本 60
5 6 现实互联网中的异步加载 63
5 6 1 google分析和dojo 63
5 6 2 yui loader 65
第6章:布置行内脚本 69
6 1 行内脚本阻塞并行下载 69
6 1 1 把行内脚本移至底部 70
6 1 2 异步启动执行脚本 71
6 1 3 使用script的defer属性 73
6 2 保持css和javascript的执行顺序 73
6 3 风险:把行内脚本放置在样式表之后 74
6 3 1 大部分下载都不阻塞行内脚本 74
6 3 2 样式表阻塞行内脚本 75
6 3 3 问题确曾发生 77
第7章:编写高效的javascript 79
7 1 管理作用域 79
7 1 1 使用局部变量 81
7 1 2 增长作用域链 83
7 2 高效的数据存取 85
7 3 流控制 88
7 3 1 快速条件判断 89
7 3 2 快速循环 93
7 4 字符串优化 99
7 4 1 字符串连接 99
7 4 2 裁剪字符串 100
7 5 避免运行时间过长的脚本 102
7 5 1 使用定时器挂起 103
7 5 2 用于挂起的定时器模式 105
7 6 总结 107
第8章:可伸缩的comet 109
8 1 comet工作原理 109
8 2 传输技术 111
8 2 1 轮询 111
8 2 2 长轮询 112
8 2 3 永久帧 113
8 2 4 xhr流 115
8 2 5 传输方式的前景 116
8 3 跨域 116
8 4 在应用程序上的执行效果 118
8 4 1 连接管理 118
8 4 2 测量性能 119
8 4 3 协议 119
8 5 总结 120
第9章:超越gzip压缩 121
9 1 这为什么很重要 121
9 2 问题的根源 123
9 2 1 快速回顾 123
9 2 2 罪魁祸首 123
9 2 3 流行的乌龟窃听者实例 124
9 3 如何帮助这些用户 124
9 3 1 设计目标:最小化未压缩文件的尺寸 125
9 3 2 引导用户 129
9 3 3 对gzip的支持进行直接探测 130
第10章:图像优化 133
10 1 两步实现简单图像优化 134
10 2 图像格式 135
10 2 1 背景 135
10 2 2 不同图像格式的特性 137
10 2 3 png的更多资料 139
10 3 自动无损图像优化 141
10 3 1 优化png格式的图像 142
10 3 2 剥离jpeg的元数据 143
10 3 3 将gif转换成png 144
10 3 4 优化gif动画 144
10 3 5 smush it 145
10 3 6 使用渐进jpeg格式来存储大图像 145
10 4 alpha透明:避免使用alphaimageloader 146
10 4 1 alpha透明度的效果 147
10 4 2 alphaimageloader 149
10 4 3 alphaimageloader的问题 150
10 4 4 渐进增强的png8 alpha透明 151
10 5 优化sprite 153
10 5 1 超级sprite vs 模块化sprite 154
10 5 2 高度优化的css sprite 155
10 6 其他图像优化方法 155
10 6 1 避免对图像进行缩放 155
10 6 2 优化生成的图像 156
10 6 3 favicons 157
10 6 4 apple触摸图标 158
10 7 总结 159
第11章:划分主域 161
11 1 关键路径 161
11 2 谁在划分主域 163
11 3 降级到/1 0 165
11 4 域划分的扩展话题 168
11 4 1 ip地址和主机名 168
11 4 2 多少个域 168
11 4 3 如何划分资源 168
11 4 4 新型浏览器 169
第12章:尽早刷新文档的输出 171
12 1 刷新文档头部的输出 171
12 2 输出缓冲 173
12 3 块编码 175
12 4 刷新输出和gzip压缩 176
12 5 其他障碍 177
12 6 刷新输出时的域阻塞 178
12 7 浏览器:最后的障碍 178
12 8 不借助php进行刷新输出 179
12 9 刷新输出问题清单 180
第13章:少用iframe 181
13 1 开销最高的dom元素 181
13 2 iframe阻塞onload事件 182
13 3 使用iframe并行下载 184
13 3 1 脚本位于iframe之前 184
13 3 2 样式表位于iframe之前 185
13 3 3 样式表位于iframe之后 186
13 4 每个主机名的连接 187
13 4 1 iframe中的连接共享 187
13 4 2 跨标签页和窗口的连接共享 188
13 5 总结使用iframe的开销 190
第14章:简化css选择符 191
14 1 选择符的类型 191
14 1 1 id选择符 192
14 1 2 类选择符 193
14 1 3 类型选择符 193
14 1 4 相邻兄弟选择符 193
14 1 5 子选择符 193
14 1 6 后代选择符 193
14 1 7 通配选择符 194
14 1 8 属性选择符 194
14 1 9 伪类和伪元素 194
14 2 高效css选择符的关键 194
14 2 1 最右边优先 195
14 2 2 编写高效的css选择符 195
14 3 css选择符性能 197
14 3 1 复杂的选择符影响性能(有时) 197
14 3 2 应避免使用的css选择符 200
14 3 3 回流时间 201
14 4 在现实中测量css选择符 202
附录:性能工具 205
索引 221