视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
优化网页之快速的呈现我们的网页_javascript技巧
2020-11-27 20:37:24 责编:小采
文档

一.我们需要解决的麻烦
A.减少HTTP请求数.
减少HTTP请求数有什么好处:
降低服务器跟客户端的建立和消除HTTP请求和响应Header的开销
减少服务器为HTTP连接的进程和线程的开销,如果可能,还会包括GZIP压缩的CPU开销.
B.减小被请求文件大小, 减少请求数据占用的网络带宽.
C.让用户更快的看到想要的结果.
D.提高客户端渲染速度.
E让浏览器同时能请求更多的数据.
F.提高服务器相应速度.
G.通过版本化控制客户端Cache.

引用
二.如何解决我们的麻烦

A.如何减少HTTP请求数
1.合并JS文件跟 CSS文件.

2.合并框架图片以及相对变动较少的图片成一张,通过CSS背景切割来完成渲染.
3.合理使用本地Cache来缓存JS/CSS/IMAGE.
4.合理使用UserData缓存JS文件,对于FF用户可以单独请求服务器,这样能解决80%用户的问题.
5.把JS跟CSS合并成一个文件
写法如下:


window.onload=function(){
document.getElementById("test2").innerHTML="传说中滴JS测试者。如果你看到我,那JS也生效了";
}


引用
以上内容的文件同时被JS跟Style引用,都是有效的

B.减小被请求文件大小,减少请求数据占用的网络带宽
1.压缩JS体积
删除JS中空白换行,注释,混淆把长变量换成短变量
2.压缩CSS体积
删除CSS注释
CSS中的写法尽量用简写,比如:
.bak{background:url(sina.gif) no-repeat left};
3.使用DIV+CSS方式搭建网站结构,提高CSS重用性,来减少HTML文件大小.
4.使用服务器端GZIP压缩JS/ CSS文件,缩小传输文件大小.
附注:Apache1跟Apache2的GZIP的效率跟方式不一样的,根据需要自行选择

C.让用户更快的看到想要的结果
用户对于一个站点的白页的忍受时间根据统计是8-12秒.
对于用户能忍受的页面白页时间是8-10秒, 白页的产生可能由于各种原因引起,我们能做的就是怎么让用户能变的稍微能等待更久.

方案1.多做一个引导页,让用户体会其中的变化
案例:mail.aol.com中的loading引导页


方案2.优先载入页面结构以及结构图片,后一步载入当前页面数据,再后 一步载入Iframe,Flash等数据.让用户尽早的看到被打开页面的希望.

D.提高客户端渲染速度
这个问题就比较泛泛了,影响客户端的渲染速度有多方面的,主要目的都是提高程序方面的效率.
1. 对于大索引的结构,尽可能的少用索引访问,能用访问兄弟节点的方式尽可能用访问兄弟节点的方式.
var t1=new Date();
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load("xml.xml");
var node=xmlDoc.documentElement.firstChild;
var a=[],i=-1;
do a[++i]=node.getAttribute("text");
while(node=node.nextSibling);
a=a.join("");
document.write(a.length);
alert(new Date()-t1);


引用
2. 字符串拼接尽可能用数组方式

显示全文
专题