本文共 987 字,大约阅读时间需要 3 分钟。
ajax的核心是 XMLHttpRequest
html引用外部的时候这些要放在最后 好处如下: 1.加快网页加载速度 2.document.getElementById也可以用 不然 放head中则无法使用DOM方法 function loadXMLDoc(){ var xmlhttp; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); }else{ xmlhttp=new ActiveXObject(“Microsoft.XMLHTTP”); } xmlhttp.onreadystatechange=function{ if(xmlhttp.readyState==4&&xmlhttp.status==200){ document.getElementById(“myDiv”).innerHTML=xmlhttp.responseText; } } xmlhttp.open(“GET”,”/try/ajax/ajax_info.txt”,true); xmlhttp.send(); }onreadystatechange是一个事件处理函数 他会在服务器给XMLHttpRequest对象送回响应的时候被触发
执行 可以 request.onreadystatechange=function(){ … } 也可以request.onreadystatechange=doSomething; 不能加() 加了就是立即调用函数的意思 这里我们是把函数的引用赋值给onreadystatechange属性 responseText属性 是用于保存字符串形式的数据 另一个是responseXML属性 用于保存Content-Type头部中 指定为”text/xml“的数据 可以用DOM方法处理这个对象 这也是XMLHttpRequest中有XML的原因 注意:有些浏览器会限制Ajax请求使用的协议 比如Chrome中 如果用file://协议从自己的硬盘里加载文件 就会报错 翻译过来就是 跨域请求只支持HTTP协议的 错误消息 注意: 脚本在发送XMLHttpRequest请求之后 仍会继续执行 不会等待响应返回但是ajax是无法做到平稳退化的 就需要 Hijax技术 还在学习ing
转载地址:http://ysxqa.baihongyu.com/