function switchXHRState(fCallback, aArguments) { switch (this.readyState) { case 0: console.log("还没调用open()方法."); break; case 1: console.log("还没调用send()方法."); break; case 2: console.log("已经调用send()方法,响应头和响应状态已经返回."); break; case 3: console.log("下载中,已经得到部分响应实体."); break; case 4: console.log("请求完成!"); fCallback.apply(this, aArguments); } }; function loadFile (sURL, fCallback /*, 传入参数1, 传入参数2, 等 */) { var oReq = new XMLHttpRequest(); oReq.onreadystatechange = switchXHRState.bind(oReq, fCallback, Array.prototype.slice.call(arguments, 2)); oReq.open("GET", sURL, true); oReq.send(null); }
详解XMLHttpRequest(一)同步请求和异步请求(2)
内容版权声明:除非注明,否则皆为本站原创文章。