网页加速系列(五)、 网页加速之进阶上篇

 

本文原文地址:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndude/html/dude1201.asp(英文)

(五)、 网页加速之进阶上篇

  WEB开发人员是否必须掌握复杂的组件技术才能加快HTML页面的访问速度?答案是:不一定!实际上,有许多关于HTML与DHTML方面的技巧,它们原理简单而且上手容易。无论是技术高超的老手,还是初涉编程的菜鸟,领会这些都十分必要。

减少下载

减少WEB页面下载时间的关键就是设法减小文件大小。当多个页面共用一些成分内容时,就可以考虑将这些公用部分单独分离出来。比如:我们可以将多个HTML页面都用到的脚本程序编写成独立存在的.JS文件,然后再在页面中按如下方式调用它:

<SCRIPT SRC="MYFILE.JS"></SCRIPT>

这样,公用文件只需要下载一次,然后就进入缓冲区。等下次再次调用包含公用文件的HTML页面时,下载时间明显减少。

让样式表内容进入地下工作

CSS是HTML装扮器,一个漂亮的WEB页面不可能没有它。HTML页面中有多种引用CSS的方法,不同的方法导致的效率也不一样。通常,我们可以将定义于<STYLE></STYLE>间的样式控制代码提取出来,保存到单独的.CSS文件中,然后在HTML页面中以<LINK>标记或者@IMPORT标记的方式进行引用:

<STYLE>
@IMPORT URL("MYSHEET1.CSS");
</STYLE>


请注意2点:1、.CSS文件中无需包括<STYLE>标记;2、@IMPORT和LINK标记要定义在HTML页面的HEAD部分。

宝贵内存节省两法

尽量减少HTML页面占用的内存空间是加快页面下载速度的一个有效方法。在这方面,有2个需要注意的问题:

1、使用同一种脚本语言

HTML页面离不开脚本程序的支持,我们经常会在页面中嵌入多种脚本语言,比如JAVASCRIPT与VBSCRIPT。但是,不知你发觉没有:这样的混合使用减慢了页面的访问速度。原因在于:要解释并运行多种脚本代码,就必须在内存中装载多种脚本引擎。所以,请尽量在页面中使用同一种脚本语言编写代码。

2、巧用IFRAME

你使用过<IFRAME>标记吗?它可是一个非常美妙的功能。如果要在一个HTML文档中包含第2个页面的内容,通常的方法是使用<FRAMESET>标记。但是有了<IFRAME>,一切变得简单了。比如,开发一个文档预览页面,可以在左边放置一系列主题,在右边放置一个IFRAME,其中包含要预览的文档;当鼠标掠过左边的每一个主题链接时,就在右边建立一个新的IFRAME以预览文档。这样做,代码效率无疑是高效的,但同时导致了繁重的处理过程,最终是缓慢的速度。

没关系,我们有办法:只使用单一的IFRAME。当鼠标指向一个新主题时,只需要修改IFRAME元素的SRC属性即可。这样,任何时间内只会有一个预览文档保留在内存。

择优选用动画定位属性

每天上网浏览页面,你一定会看到许多动画效果。比如,一个可爱的小兔子在页面上来回地走动 ... 实现这个效果的核心技术就是CCS定位。通常,我们是使用ELEMENT.STYLE.LEFT和ELEMENT.STYLE.TOP2个属性来达到图形定位的目的。但是,这样做会产生一些问题:LEFT属性返回一个字符串,并且其中包含了度量单位(比如100PX)。因此,要设定新的位置坐标,就必须首先对这个字符串返回值进行处理,然后才能赋值,象下面一样:

DIM STRINGLEFT, INTLEFT

STRINGLEFT = ELEMENT.STYLE.LEFT

INTLEFT = PARSEINT(STRINGLEFT)

INTLEFT = INTLEFT + 10

ELEMENT.STYLE.LEFT = INTLEFT;

你一定会感觉做这么点事情竟要编写这么复杂的代码,是否有更简洁的方法?当然有!请看这4个属性:POSLEFT、POSTOP、POSWIDTH 和 POSHEIGHT,它们对应于相应字符串返回值的点数数值。好了,使用这些属性重新编写代码实现上面代码实现的功能:

ELEMENT.STYLE.POSLEFT += 10

代码短小、速度却更快!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值