WEB开发网
开发学院WEB开发Jsp 图片的预先读取-加快下载速度 阅读

图片的预先读取-加快下载速度

 2008-01-05 08:36:42 来源:WEB开发网   
核心提示:本章主要讨论Cache和PReload---图片的预先调用,为什么要对图片进行预先的调用?答案非常简单:为了速度,图片的预先读取-加快下载速度, 你是否已经注重到了,一个以前曾经访问过的页面再次进入时速度会比以前快许多?这是因为页面中所有的图片都已经被“cached”了,因为它能保证最先被读取,将需要预先被读取的所有图

  本章主要讨论Cache和PReload---图片的预先调用。

为什么要对图片进行预先的调用?答案非常简单:为了速度。

你是否已经注重到了,一个以前曾经访问过的页面再次进入时速度会比以前快许多?这是因为页面中所有的图片都已经被“cached”了。

对于IE,在windows目录下的Temporary Internet Files的子目录内,对于 Netscape则是在一个叫做cache的子目录中,保存这你曾经浏览过的一些页面的Html文档和图片。当你第一次浏览页面时这些资料写入cache以备今后的需要。下一次再光临时,则直接从硬盘的cache中读取资料,速度当然快多了。

下面的内容就跟javascript扯上关系了。

(1)并非所有的cache都是有利的,因为有时候你需要频繁地更新页面,或者再页面上放置了一些诸如计数器之类的动态脚本,你需要浏览时及时更新这些资料,并非从cache中读取旧的数据。那么,用下面的方法可以将页面cache屏蔽起来。

将如下代码加入HTML的<head>区即可。
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

(2)为了加快下载速度,可以将一些可能要使用的图片预先读取出来,那么当使用的时候就不必现下载了。尤其是制作onmouSEOver效果(例如:鼠标移动到一个按钮上产生按下或变色等效果)时,否则会有明显的延迟,效果就大打折扣了。

(3)预先读取图片的方法是比较简单的,用Javascript这样实现。

将如下的类似代码放在HTML的<head>区:
<SCRIPT LANGUAGE="JavaScript">
<!--
Image1= new Image(100,50)
Image1.src = "image1.gif"

Image2 = new Image(100,50)
Image2.src = "image2.gif"

Image3 = new Image(100,50)
Image3.src = "image3.gif"

// -->
</SCRIPT>

这样浏览器在装载页面时就已经预先下载了3个图片(image1.gif,images2.gif和image3.gif)。当激发onmouseover事件时,浏览器直接从Cache中读取图片,速度当然快多了。

这里做一些小小说明:图片的名字可以是任意的,100和50分别是读入cache的图片的宽度和高度。但是脚本格式必须按照规定的格式写,"Image1=new Image"。假如图片在其它服务器的子目录内,只要用正确的绝对路径表示即可。

脚本可以放在HTML的任意位置,但是建议放在靠上的位置,在<head>区是最好的,因为它能保证最先被读取。

将需要预先被读取的所有图片都加入代码中,按格式写就可以了。

<------本节结束------>

Tags:图片 预先 读取

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接