这主要是判断
document.readyState是否为complete

解决方案 »

  1.   

    贴个COOL
    你可以先显示该页面,等加载完后,再跳转//输入 Loading  过后跳转的网址
    location.href="http://www.cnlk.com";
    ............................................
    <html>
    <head>
    <title>loading00</title>
    <META http-equiv=Content-Type content="text/html; charset=gb2312">
    <SCRIPT type=text/javascript>
    <!--
    var ie5 = (document.all && document.getElementsByTagName);
    var step = 0;
    function setSB(v, el, inforEl, message) {
    if (ie5 || document.readyState == "complete") {
    filterEl = el.children[0];
    valueEl = el.children[1]; if (filterEl.style.pixelWidth > 0) {
    var filterBackup = filterEl.style.filter;
    filterEl.style.filter = "";
    filterEl.style.filter = filterBackup;
    }filterEl.style.width = v + "%";
    valueEl.innerText = v + "%";
    inforEl.innerText = message;
    }
    }
    function setSBByStep(v, el, inforEl, message) {
    if (ie5 || document.readyState == "complete") {
    step = step + v;
    filterEl = el.children[0];
    valueEl = el.children[1];if (filterEl.style.pixelWidth > 0) {
    var filterBackup = filterEl.style.filter;
    filterEl.style.filter = "";
    filterEl.style.filter = filterBackup;
    }filterEl.style.width = step + "%";
    valueEl.innerText = step + "%"
    inforEl.innerText = message;
    }
    }function fakeProgress(v, el) {
    if (v >= 101)//输入 Loading  过后跳转的网址
    location.href="http://www.cnlk.com";
    else {
    setSB(v, el, infor, "LOADING ...");
    window.setTimeout("fakeProgress(" + (v + 1) + ", document.all['" + el.id + "'])", 20);
    }
    }//-->
    </SCRIPT>
    </head><BODY onload="fakeProgress(0,sb)" topmargin=100 bgcolor="#FFFFFF">
    <!-- Status Bar Starts -->
    <div align=center>
    <DIV id=sb 
    style="BORDER-RIGHT: white 0px inset; BORDER-TOP: white 0px inset; BACKGROUND: white; BORDER-LEFT: white 0px inset; WIDTH: 200px; BORDER-BOTTOM: white 0px inset; HEIGHT: 20px; TEXT-ALIGN: left">
    <DIV id=sbChild1 
    style="FILTER: Alpha(Opacity=0, FinishOpacity=80, Style=1, StartX=0, StartY=0, FinishX=100, FinishY=0); WIDTH: 0%; POSITION: absolute; HEIGHT: 16px">
    <DIV 
    style="FONT-SIZE: 1px;BACKGROUND:#a0ef99; WIDTH: 100%; HEIGHT: 100%"></DIV></DIV>
    <DIV 
    style="FONT-SIZE: 12px; WIDTH: 100%; COLOR: red; FONT-FAMILY: arial; POSITION: absolute; TEXT-ALIGN: center"></DIV></DIV>
    <!-- Status Bar Ends -->
    <DIV id=infor
    style=" WIDTH: 100%; COLOR: blue; FONT-FAMILY: arial; POSITION: relative; TEXT-ALIGN: center"></DIV>
    </div></BODY>
    </html>
      

  2.   

    老大,上面的代码好像只运行setSB,没有判断过document.readyState。
    还有,上面的两个页面好像还是串行,即页面a循环完毕后再转到页面b。
    能否实现并行,即在页面b完全生成之前,只显示页面a,只有页面b完全生成后,才显示页面b.
    多谢赐教!