1 前端优化必要性
l Yahoo! 慢 0.4s -> 减少 5%-9% 的流量
2 前端优化最佳实践
在前端发展了那么长时间,其优化经验也有很多值得借鉴,下面作简单介绍。
2.1 14 条优化军规
3. 添加 Expires 头 ( 或者 Cache-control)
10. 压缩 JavaScript 和 CSS 文件 ( 包括内联的 )
以上内容在网上都有介绍,在此不作多说,有兴趣的同学可以 google 一把。
2.2 拆分初始化负载
Ajax 和动态 HTML 的日益普及网页上面的 js 和 css 也变得非常庞大, web 程序也变得像桌面程序一样,很大一部分代码不会在启动时候使用,而是采取插件式架构,允许动态加载模块。
2.3 无阻塞加载脚本
2.4 使用现成组件
现成开源的 js 组件很多,可以根据熟悉程度和业务应用性使用, jquery , yui , ext , dojo 。如果自行开发,除非有强大团队,要不维护成本太高,而且功能不完善。
惊艳,野性, 代码风格类 Ruby ,新手不易上手,文档缺乏
它的设计初衷就是:不光只运行在浏览器的脚本环境中,甚至像 pdf/rhino 这些也拥有
温顺,矫健,文档齐全,编码语法相对传统,封装的形式比较接近于 Java
2.5 针对 Content 优化
2.6 图片优化
尝试使用 PNG , png 拥有 gif 所有功能,还支持 alpha 透明,文件比较小,所以尽可能使用 png 格式图片。
删除图片的元数据,例如 photoshop 的元数据,这样在一定程度上能减少图片大小而不影响图片质量。
可以把网站常用的小图片集合在一张图片中,通过 Css 定位到小图上面,从而减少 http 请求。
<img width="100" height="100" src= “ cat.jpg" />
3 怎么样才算足够快
用户直接操作 ui 中对象的感觉极限。例如,用户直接选择表格的一列到该列高亮显示,或者反馈被选择的时间间隔。
用户随意在计算机指令空间操作而无需过度等等时间的感觉极限。 0.2-1.0 的时间延迟会被用户注意到,会让用感觉到计算机正在对指令进行处理中。等待的时间过长,会让用户失去流畅的体验。
换句话说 js 在执行如果超过 0.1 秒,会让人感觉到不平滑。如果超过 1 秒会让人感觉应用程序缓慢;超过 10秒那么用户会非常沮丧。这些就是用于足够快的标准。
原文:http://blog.youkuaiyun.com/riguangli/article/details/5775025