我说一下思路。 一个层设置为display none; 把需要载入的图片放进去,再最后一张图片用onload运行事件跳转或者是其他动作,这样会把所有图片下载到缓存里。如果其中一个图片的路径错误,将无法成功加载。 例子里只有2张宽1600的图
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head><title> </title> <style type="text/css" > #process{text-align:left; width:500px; height:23px; margin:160px auto 0;text-align:left;background:#f00;position:relative;z-index:0; } #img{height:24px;width:502px;margin:0 auto;position:relative;top:-23px; background-color:#294C64; z-index:3; border:1px solid #7CA295} #img span{height:22px;width:500px;background:#f00;left:1px;top:1px; position:absolute;z-index:4;} #img #Lable{ display:block;width:100px;height:20px;text-align:center;color:#fff; font-weight:700; position:absolute;top:3px;left:200px;z-index:5;} </style> <script language="javaScript" type="text/javascript"> <!-- function ProgressBar (v){ document.getElementById('img_span').style.width = v*5+"px"; document.getElementById('Lable').innerHTML = v+"%"; } var PreLoad=false; function ExecProgress(v) { if (v >= 101){ if (PreLoad==true){ alert("加载完成,转到百度!!") location.href="http://www.baidu.com"; return; } else { v=0 } } ProgressBar(v); window.setTimeout("ExecProgress(" + (v + 1) + ")", 20); } document.oncontextmenu=new Function("event.returnValue=false;"); document.onselectstart=new Function("event.returnValue=false;"); //--> </script> </head> <body> <h1>加载中。。。。</h1> <div id="process"></div> <div id="img"><span id="img_span"></span><div id="Lable">0%</div></div> <div style="display:none;"> <img src="http://hiphotos.baidu.com/ll8k/pic/item/54c5963359742f61ac4b5f02.jpg" /> <img src="http://hiphotos.baidu.com/ll8k/pic/item/1cb32dd93f37a90e10df9b0e.jpg" onload="PreLoad=true" /> </div> <script language="javascript" type="text/javascript"> ExecProgress(0); </script> </body> </html>
提示:您可以先修改部分代码再运行
[ 本帖最后由 lyh6631791 于 2010-6-9 17:03 编辑 ]