首頁 > web前端 > js教程 > 主體

JS中图片缓冲loading技术的实例代码_javascript技巧

WBOY
發布: 2016-05-16 17:24:01
原創
995 人瀏覽過
复制代码 代码如下:

var Imgvalue;
var Count =13;   //图片数量
var Imgs = new Array(Count);
var ImgLoaded =0;
//预加载图片
function preLoadImgs()
{
alert('图片加载中请稍等......');
for(var i=0;iJS中图片缓冲loading技术的实例代码_javascript技巧Imgs[i]=new Image();
downloadImage(i);
}
}
//加载单个图片
function downloadImage(i)
{
    var imageIndex = i+1; //图片以1开始
    Imgs[i].src = "images/"+imageIndex+".jpg";
    Imgs[i].onLoad=validateImages(i);
}
//验证是否成功加载完成,如不成功则重新加载
function validateImages(i){
if (!Imgs[i].complete)
    {
     window.setTimeout('downloadImage('+i+')',200);    
    }
else if (typeof Imgs[i].naturalWidth != "undefined" && Imgs[i].naturalWidth == 0)
    {
    window.setTimeout('downloadImage('+i+')',200);
    }
    else 
    {
        ImgLoaded++
        if(ImgLoaded == Count)
        {
            document.getElementById('BtnStart').disabled=false;
            document.getElementById('BtnStop').disabled=false;
            alert('图片加载完毕!');
        }
    }
}
//开始
function RandStart()
{
    Init = setInterval('SetRand()',50);    
}
//随机显示
function SetRand()
{
    imageIndex = Math.floor(Math.random()*Count);
    document.getElementById("ImgView").src = Imgs[imageIndex].src;
}
//结束
function RandStop()
{
    window.clearInterval(Init);
}
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!