码迷,mamicode.com
首页 > 其他好文 > 详细

前端页面优化方式

时间:2015-08-25 13:26:42      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:

    首先声明下,本人是前端菜鸟,边学变总结,有说的不对的地方希望大家指出~

    最近老听到页面优化问题,根据自己的经验以及查阅资料,暂总结以下几点:

1.css、js、图片的压缩

   对那些应用型复杂的页面来说,css、js、图片文件超级多,一个个加载必会影响加载速度,那么我们首先想到的是压缩,如何压缩了?

   css简单来说是通过插件实现,现在淘宝出的服务器(nginx修改版)自带有这个功能。 通过一个url地址里写上每个js或者css 路径,然后插件通过路径将js/css 进行gzip形式压缩,最后组合成一个文件输出。你能看到的输出格式是php后缀,但是输出文件的表头是js/CSS 这样浏览器也就当是js/css来解析了。

   还有看到有些博友提到了YUI Compressor,它的特点是:移除注释;移除额外的空格;细微优化;标识符替换。

 YUI Compressor是java程序,如果你对java很熟悉的话可快速的上手使用yuicompressor.jar;如果你对java很陌生也没关系,一样可以使用YUI Compressor,具体的使用方法可去百度查阅。

   再来说说图片的压缩。

   切图的时候尽量缩小图片分辨率、改变图片格式、降低图片保存质量等,然后就是尽量把小图标用图片精灵(Sprite)放在一张大图上,减少http请求。

2.减少HTTP请求  

    在浏览器(客户端)和服务器发生通信时,就已经消耗了大量的时间,尤其是在网络情况比较糟糕的时候,这个问题尤其的突出。

  一个正常HTTP请求的流程简述:如在浏览器中输入"www.xxxxxx.com"并按下回车,浏览器再与这个URL指向的服务器建立连接,然后浏览器才能向服务器发送请求信息,服务器在接受到请求的信息后再返回相应的信息,浏览器接收到来自服务器的应答信息后,对这些数据解释执行。

  而当我们请求的网页文件中有很多图片、CSS、JS甚至音乐等信息时,将会频繁的与服务器建立连接,与释放连接,这必定会造成资源的浪费,且每个HTTP请求都会对服务器和浏览器产生性能负担。

  网速相同的条件下,下载一个100KB的图片比下载两个50KB的图片要快。所以,请减少HTTP请求。

3.减少对DOM的操作  

     修改和访问DOM元素会造成页面的Repaint和Reflow,循环对DOM操作更是罪恶的行为。所以请合理的使用JavaScript变量储存内容,考虑大量DOM元素中循环的性能开销,在循环结束时一次性写入。

  减少对DOM元素的查询和修改,查询时可将其赋值给局部变量。

  注:在IE中:hover会降低响应速度。

4.使用JSON格式来进行数据交换  

     JSON是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包。

  与XML序列化相比,JSON序列化后产生的数据一般要比XML序列化后数据体积小,所以在Facebook等知名网站中都采用了JSON作为数据交换方式。

 

    在JSON中,有两种结构:对象和数组。

  1. 一个对象以 “ { ”  开始,“ } ” 结束。每个“名称”后跟一个 “ : ” ;“名称/值 对”之间使用 “ ,  ”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用引号括起来,数值型则不需要。如:

var obj={"name":"darren","age":24,"location":"beijing"}    

  2. 数组是值(value)的有序集合。一个数组以 “ [ ” 开始, “ ] ” 结束。值之间使用 “ , ” (逗号)分隔。如:

var jsonlist=[{"name":"darren","age":24,"location":"beijing"},{"name":"weidong.nie","age":24,"location":"hunan"}];

  对这种数组和对象字面量的操作是非常方便且高效的。如果预先知道JSON结构的情况下,使用JSON进行数据传递简直是太美妙了,可以写出很实用美观可读性强的代码。如果你是纯粹的前台开发人员,一定会非常喜欢JSON。

 

     参考文献:http://www.cnblogs.com/Darren_code/archive/2011/12/31/property.html

     目前看到最多的几种方法,后续有了解继续更新,谢谢大家!

前端页面优化方式

标签:

原文地址:http://www.cnblogs.com/coco0821/p/4756688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!