加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax学习笔记之二

发布时间:2020-12-16 00:18:29 所属栏目:百科 来源:网络整理
导读:对代码进行一下优化如下: window.onload=initAll;//页面加载是调用varxhr=false;//先定义为flase //加载函数functioninitAll(){if(window.XMLHttpRequest){//判断浏览器是否支持XMLHttpRequest,如果支持则创建对象xhr=newXMLHttpRequest;}else{if(win

对代码进行一下优化如下:

window.onload=initAll;//页面加载是调用
varxhr=false;//先定义为flase
//加载函数
functioninitAll(){
if(window.XMLHttpRequest){//判断浏览器是否支持XMLHttpRequest,如果支持则创建对象
xhr=newXMLHttpRequest;
}else{
if(window.ActiveXObject){//如果不支持则判断时候支持ActiveXObject(为IE早期浏览器内置引擎对象)
try{
xhr=newActiveXObject("Microsoft.XMLHTTP");//创建对象
}catch(e){}
}

}

if(xhr){//判断如果对象存在
getPix();//调用getPix()函数
}
else{
alert("Sorry,butIcould'tcreatanXMLHttpRequest");//否则,弹出对话框提示不能创建引擎对象
}

}
functiongetPix(){
xhr.open("GET/POST","URL地址","true/fasle");//打开open函数
xhr.onreadystatechange=showPictures;//状态变化判断
xhr.end(null);//发送参数(get为null,post先设置requesthead)
setTimeout(getPix,5*1000);//每5S调用一次函数
}
functionshowPictures(){
vartempText=doucument.createElement("div");//创建一个div
if(xhr.readyState=4){//判断状态是否为4
if(xhr.status=200){
varallImages=xhr.responsXML.getElementsByTagName("content");//处理结果
}
}else{
alert("Therewasaproblemwiththerequest"+xhr.status)
}

}


需要注意的地方

虽然微软的IE(5.5,6)支持XMLHttpRequest,但是没有这个对象的本机版本,在这种情况下,必须检查浏览器是否支持ActiveX。如果支持的话,就检查是否能根据ActiveX创建XMLHttpRequest对象(try、catch进行异常处理)。

每当xhr.readyStatue属相值发生变化时,就会触发xhr.onreadystatuechange这个处理程序从


readyState属性值

0----------------未初始化

1---------------正在加载

2----------------已经加载

3----------------交互式的,未加载完也可以进行交互

4----------------完成


状态码200代表一切正常,404请求文件不存在

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读