<style type="text/css">
#divLoadCont{position:absolute; z-index:500; left:0; top:0; width:100%; height:98%; clip:rect(0,100%,100%,0); background-color:transparent; layer-background-color:white; }
#divLoad1{position:absolute; layer-background-color:silver; background-color:silver}
#divLoad2{position:absolute; left:0; top:0; layer-background-color:navy; background-color:navy}
#divLoadText{position:absolute; background-color:transparent; font-family:arial,helvetica; color:Navy; font-size:14px; } 
</style>
<script language="JavaScript" type="text/javascript">
function lib_bwcheck(){ //Browsercheck (needed)
        this.ver=navigator.appVersion
        this.agent=navigator.userAgent
        this.dom=document.getElementById?1:0
        this.opera5=this.agent.indexOf("Opera 5")>-1
        this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
        this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
        this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
        this.ie=this.ie4||this.ie5||this.ie6
        this.mac=this.agent.indexOf("Mac")>-1
        this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
        this.ns4=(document.layers && !this.dom)?1:0;
        this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
        return this
}
var bw=new lib_bwcheck()
numImages=20 //速度
loaderWidth=300 //进度条长度currentImg=0
function lib_doc_size(){ 
  this.x=0;this.x2=bw.ie && document.body.offsetWidth-20||innerWidth||0;
  this.y=0;this.y2=bw.ie && document.body.offsetHeight-5||innerHeight||0;
  if(!this.x2||!this.y2) return message('Document has no width or height') 
  this.x50=this.x2/2;this.y50=this.y2/2;
  return this;
}
function lib_obj(obj,nest){ 
  nest=(!nest) ? "":'document.'+nest+'.'
  this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+"document.layers." +obj):0;        
  this.css=bw.dom||bw.ie4?this.evnt.style:this.evnt; 
  this.ref=this.css
  this.w=this.evnt.offsetWidth||this.css.clip.width||
    this.ref.width||this.css.pixelWidth||0; 
  return this
}
lib_obj.prototype.moveIt = function(x,y){
  this.x=x;this.y=y; this.css.left=x;this.css.top=y
}
lib_obj.prototype.clipTo = function(t,r,b,l,setwidth){ 
  this.ct=t; this.cr=r; this.cb=b; this.cl=l
  if(bw.ns4){
    this.css.clip.top=t;this.css.clip.right=r
    this.css.clip.bottom=b;this.css.clip.left=l
  }else{
    if(t<0)t=0;if(r<0)r=0;if(b<0)b=0;if(b<0)b=0
    this.css.clip="rect("+t+","+r+","+b+","+l+")";
    if(setwidth){this.css.pixelWidth=this.css.width=r; 
    this.css.pixelHeight=this.css.height=b}
  }
}
var oLoad2
function startLoading(){
  page=new lib_doc_size()
  oLoadCont=new lib_obj('divLoadCont')
  oLoad=new lib_obj('divLoad1','divLoadCont')
  oLoad2=new lib_obj('divLoad2','divLoadCont.document.divLoad1')
  oLoadText=new lib_obj('divLoadText','divLoadCont.document.divLoad1')
  oLoad.moveIt(page.x50-loaderWidth/2,page.y50-20)
  oLoadText.moveIt(loaderWidth/2 - oLoadText.w/2,10)
  oLoad.clipTo(0,loaderWidth,40,0,1)
  oLoad2.per = loaderWidth/numImages
}
function loadIt(ok){
  currentImg++
  if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1)
  if(!ok){
    oLoadCont.css.visibility='hidden'
    oLoadCont=null; oLoad1=null; oLoad2=null;
  }
}
function loadIt_display(ok){
  currentImg++
  if(oLoad2) oLoad2.clipTo(0,oLoad2.per*currentImg,40,0,1)
  if(currentImg<=numImages) setTimeout("loadIt_display(1)",200)
  else{
    oLoadCont.css.visibility='hidden'
    window.location="file:///c|/"
  }
}
</script>
<div id="divLoadCont">
  <div id="divLoad1">
    <div id="divLoad2"></div><br>
    <div id="divLoadText">Loading...</div>
  </div>
</div>
<script>
startLoading()
//onload=loadIt; //- LEAVE THIS LINE WHILE TESTING. UNCOMMENT WHEN READY
loadIt_display(1) //LEAVE THIS LINE WHILE TESTING. DELETE WHEN READY
</script>

解决方案 »

  1.   

    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <style>
    <!--
    #bar, #barbackground{
    position:absolute;
    left:0;
    top:0;
    background-color:blue;
    }#barbackground{
    background-color:black;
    }-->
    </style><script language="JavaScript1.2">/*
    Dynamic Progress Bar- By Dynamicdrive.com
    For full source, Terms of service, and 100s DTHML scripts
    Visit http://www.dynamicdrive.com
    *///1) Set the duration for the progress bar to complete loading (in seconds)
    var duration=5//2) Set post action to carry out inside function below:
    function postaction(){
    //Example action could be to navigate to a URL, like following:
    //window.location="http://www.dynamicdrive.com"
    }
    ///Done Editing/////////////
    var clipright=0
    var widthIE=0
    var widthNS=0function initializebar(){
    if (document.all){
    baranchor.style.visibility="visible"
    widthIE=bar.style.pixelWidth
    startIE=setInterval("increaseIE()",50)
    }
    if (document.layers){
    widthNS=document.baranchorNS.document.barbackgroundNS.clip.width
    document.baranchorNS.document.barNS.clip.right=0
    document.baranchorNS.visibility="show"startNS=setInterval("increaseNS()",50)
    }
    }function increaseIE(){
    bar.style.clip="rect(0 "+clipright+" auto 0)"
    window.status="Loading..."
    if (clipright<widthIE)
    clipright=clipright+(widthIE/(duration*20))
    else{
    window.status=''
    clearInterval(startIE)
    postaction()
    }
    }function increaseNS(){
    if (clipright<202){
    window.status="Loading..."
    document.baranchorNS.document.barNS.clip.right=clipright
    clipright=clipright+(widthNS/(duration*20))
    }
    else{
    window.status=''
    clearInterval(startNS)
    postaction()
    }
    }
    window.onload=initializebar
    </script>
    </head><body>
    <script language="JavaScript1.2">
    if (document.all){
    document.write('<div id="baranchor" style="position:relative;width:200px;height:20px;visibility:hidden;">')
    document.write('<div id="barbackground" style="width:200px;height:20px;z-index:9"></div>')
    document.write('<div id="bar" style="width:200px;height:20px;z-index:10"></div>')
    document.write('</div>')
    }</script>
    <ilayer name="baranchorNS" visibility="hide" width=200 height=20>
    <layer name="barbackgroundNS" bgcolor=black width=200 height=20 z-index=10 left=0 top=0></layer>
    <layer name="barNS" bgcolor=blue width=200 height=20 z-index=11 left=0 top=0></layer>
    </ilayer>
    </body>
    </html>
      

  2.   

    用showModelessDialog, 看看MSDN
      

  3.   

    awaysrain谢谢
    好象有点不对,我的意思是点击提交按键后,就出现进程条当接收到服务器的数据后进程条消失,显示数据页面
      

  4.   

    你自己修改一下啊,那有现成的给你
    比如你可以把表单提交到一个隐藏的IFRAME中,并开始显示进度条
    在IFRAME中的页面ONLOAD的时候隐藏进度条
    只能模拟,不会做的非常准确的