用XMLHttpRequst对象实现真实的网页加载进度

< script  type ="text/javascript" >
<!--
// 3个用于实现无刷新数据读取的函数
var  xmlHttp ;
// 用来记录setTimeout返回值
var  TimeoutId;
function  createXMLHttpRequest() 
{
 
if (window.ActiveXObject) 
 {
  xmlHttp 
=   new  ActiveXObject( " Microsoft.XMLHTTP " );
 }
 
else   if (window.XMLHttpRequest) {
  xmlHttp 
=   new  XMLHttpRequest();
 }
}

function  startRequest() 
{
 createXMLHttpRequest();
 
var  url  =   " http://www.163.com " ;
 xmlHttp.onreadystatechange 
=  handleStateChange;
 xmlHttp.open(
" GET " ,url, true );
 xmlHttp.send(
null );
 TimeoutId
= setTimeout( " startRequest() " , 1000 );
 
// alert(TimeOutId);
}

function  handleStateChange() 
{
 
if (xmlHttp.readyState  ==   1
 {
  document.getElementById(
" msg " ).innerHTML  =   " 正在连接服务器...... " ;
 }
 
else   if (xmlHttp.readyState  ==   2
 {
  document.getElementById(
" msg " ).innerHTML  =   " 正在加载信息...... " ;
 }
 
else   if (xmlHttp.readyState == 3 )
 {
   document.getElementById(
" msg " ).innerHTML  =   " 数据交互中,请稍后...... " ;
 }
 
else   if (xmlHttp.readyState  ==   4
 {
  
if (xmlHttp.status  ==   200
  {
   
// document.getElementById("show").innerHTML = xmlHttp.responseText;
   document.getElementById( " msg " ).innerHTML = " 加载完毕 " ;
   document.clear();
   document.write(xmlHttp.responseText);
   location.reload();
  
//  document.getElementById("show").innerHTML = xmlHttp.responseText;
   // 停止执行setTimeout()
   clearTimeout(TimeoutId);
  }
  
else
  {
   document.getElementById(
" msg " ).innerHTML  =   " 数据读取失败,请稍后再试...... " ;
  }
 } 

}
// -->
</ script >
< body  onload ="startRequest();" >
< div  id ="msg" >
</ div >
< div  id ="show" >
</ div >
</ body >  
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值