国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

預(yù)裝載以及JavaScript Image()對(duì)象

2019-11-18 15:59:41
字體:
供稿:網(wǎng)友

  大量采用高解析度的圖像的確可以讓一個(gè)Web站點(diǎn)容光煥發(fā)。但同樣也會(huì)造成站點(diǎn)訪問速度下降——圖片是文件,文件就要占用帶寬,而帶寬直接同訪問等待時(shí)間相關(guān)。現(xiàn)在,讓我們來學(xué)習(xí)一種名為圖像預(yù)裝載(image PReloading)的小技巧來提高圖像訪問速度。

    一些瀏覽器試圖通過在本地緩存中保存這些圖片來解決此問題。這樣一來可以順序調(diào)用這些圖片——但對(duì)于首次使用這些圖片的時(shí)候仍然會(huì)存在延時(shí)。預(yù)裝載就是一種在需要圖片之前就將圖片下載到緩存的技術(shù)。采用這樣的方式可以使當(dāng)確實(shí)需要顯示圖片時(shí)迅速將其從緩存中恢復(fù)回來并立即顯示。

Image()對(duì)象
最簡(jiǎn)單的圖像預(yù)裝載辦法是使用javascript新建一個(gè)新的Image()對(duì)象,然后將希望預(yù)裝載的圖片URL傳遞給此對(duì)象。假設(shè)我們擁有一個(gè)名為heavyimagefile.jpg的圖片文件,我們希望當(dāng)用戶鼠標(biāo)指針移動(dòng)到一張已有的圖片上時(shí)顯示此文件。為了能更快的對(duì)此文件進(jìn)行預(yù)裝載,我們簡(jiǎn)單的創(chuàng)建了一個(gè)名為heavyImage的新Image() 對(duì)象,然后將其通過onLoad()事件句柄同步裝載到頁面上。

<Html>

<head>

<script language = "Javascript">

function preloader()

{

     heavyImage = new Image();

     heavyImage.src = "heavyimagefile.jpg";

}

</script>

</head>

<body onLoad="javascript:preloader()">

<a href="#" onMouSEOver="javascript:document.img01.src='heavyimagefile.jpg'">

<img name="img01" src="http://www.QQread.com/java/justanotherfile.jpg"></a>

</body>

</html>


    注重,圖片的標(biāo)簽(tag)本身并不處理onMouseOver()以及onMouseOut()事件,這也正是上面示例中的<img>標(biāo)簽被包括在<a>標(biāo)簽中的原因。標(biāo)簽<a>則包括了對(duì)這些事件類型的支持。

通過數(shù)組(arrays)裝載多個(gè)圖片

在實(shí)際情況中,你很有可能需要預(yù)裝載不止一張的圖片;比如,對(duì)于包括多個(gè)圖片的菜單條,或者希望實(shí)現(xiàn)平滑的動(dòng)畫效果。要實(shí)現(xiàn)這些并不困難,只需要利用JavaScript的數(shù)組,如下例所示:

<script language="JavaScript">

 
 
function preloader()

{

     // counter

     var i = 0;

     // create object

     imageObj = new Image();

     // set image list

     images = new Array();

     images[0]="image1.jpg"

     images[1]="image2.jpg"

     images[2]="image3.jpg"

     images[3]="image4.jpg"

     // start preloading

     for(i=0; i<=3; i++)

     {

          imageObj.src=images[i];

     }

}

</script>

在上面的例子中,定義了變量i以及名為imageObj的Image()對(duì)象。然后定義了新數(shù)組images[],每一個(gè)數(shù)組元素將存儲(chǔ)需要預(yù)裝載圖片的地址來源。最后,使用一個(gè)for()循環(huán)來遍歷整個(gè)數(shù)組,并對(duì)每個(gè)元素指定Image()對(duì)象,以此將圖片都預(yù)裝載到緩存中。



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鸡泽县| 若尔盖县| 姚安县| 临西县| 新津县| 湖南省| 义马市| 岱山县| 呼伦贝尔市| 阳东县| 大足县| 安溪县| 绥芬河市| 醴陵市| 鹤山市| 谢通门县| 新沂市| 乌恰县| 阿克苏市| 通山县| 新巴尔虎左旗| 靖安县| 金川县| 宁蒗| 咸宁市| 池州市| 枝江市| 特克斯县| 镇安县| 微山县| 织金县| 阿拉尔市| 始兴县| 成安县| 广宁县| 阿勒泰市| 游戏| 尼木县| 吉首市| 兴义市| 清镇市|