1. 页面减肥

a. 页面的肥瘦是影响加载速度最重要的因素。

b. 删除不必要的空格、注释。

c. 将inline的script和css移到外部文件。

d. 可以使用HTML Tidy来给HTML减肥,还可以使用一些压缩工具来给JavaScript减肥。

2. 减少文件数量

a. 减少页面上引用的文件数量可以减少HTTP连接数。

b. 许多JavaScript、CSS文件可以合并最好合并,人家财帮子都把自己的JavaScript. functions和Prototype.js合并到一个base.js文件里去了。

3. 减少域名查询

a. DNS查询和解析域名也是消耗时间的,所以要减少对外部JavaScript、CSS、图片等资源的引用,不同域名的使用越少越好。

4. 缓存重用数据

a. 对重复使用的数据进行缓存。

5. 优化页面元素加载顺序

a. 首先加载页面最初显示的内容和与之相关的JavaScript和CSS,然后加载HTML相关的东西,像什么不是最初显示相关的图片、flash、视频等很肥的资源就最后加载。

6. 减少inline JavaScript的数量

a. 浏览器parser会假设inline JavaScript会改变页面结构,所以使用inline JavaScript开销较大。

b. 不要使用document.write()这种输出内容的方法,使用现代W3C DOM方法来为现代浏览器处理页面内容。

7. 使用现代CSS和合法的标签

a. 使用现代CSS来减少标签和图像,例如使用现代CSS+文字完全可以替代一些只有文字的图片。

b. 使用合法的标签避免浏览器解析HTML时做“error correction”等操作,还可以被HTML Tidy来给HTML减肥。

8. Chunk your content

a. 不要使用嵌套table,而使用非嵌套table或者div。将基于大块嵌套的table的layout分解成多个小table,这样就不需要等到整个页面(或 大table)内容全部加载完才显示。

9. 指定图像和table的大小

a. 如果浏览器可以立即决定图像或table的大小,那么它就可以马上显示页面而不要重新做一些布局安排的工作。

b. 这不仅加快了页面的显示,也预防了页面完成加载后布局的一些不当的改变。

c. image使用height和width。

最新文章

  1. RunLoop(基本操作)
  2. Python黑帽编程2.3 字符串、列表、元组、字典和集合
  3. 自动更新补丁Security Update for Internet Explorer 10 for Windows Server 2008 R2 x64 Edition (KB2964358)失败
  4. clipboard复制剪贴板功能,以及用requirejs时报错---Uncaught ReferenceError: Clipboard is not defined
  5. linux服务器调整参数支持高并发
  6. BZOJ 3573 米特运输
  7. js EasyUI前台 全选的实现
  8. iotop使用
  9. C# OR/Mapping 数据处理模式学习
  10. 为什么webview.loadUrl("javascript:function() ")不执行?
  11. 在不同编译环境中如何使用sleep()函数
  12. linux 命令汇总
  13. Node.js系列:Buffer类的使用
  14. Egg + Vue 服务端渲染工程化实现
  15. JS获取链接中域名等信息
  16. 集群RedHat6.5+JDK1.8+Hadoop2.7.3+Spark2.1.1+zookeeper3.4.6+kafka2.11+flume1.6环境搭建步骤
  17. 安装mysql时启动服务出错问题
  18. JavaBeans与内省(Introspector)
  19. P2325 [SCOI2005]王室联邦 解题报告
  20. JSR教程1——JSR 303 - Bean Validation介绍

热门文章

  1. Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker from transaction definition.
  2. vue-router 获得上一级路由以及返回上一级路由的方法
  3. C++之虚函数与虚继承详解
  4. HDU2602(01背包)
  5. windows安装PHP5.4+Apache2.4+Mysql5.5
  6. 使用 SourceTree 管理ios项目
  7. jquery : eval() 解析json的注意
  8. 使用Swing组件实现简单的进制转换
  9. Ubuntu环境下gedit以及vim的一些个简单配置
  10. eclipse修改某一个项目的字符编码