/**
* ajax库
*/
// global variables to keep track of the request and the function to call when done
var ajaxreq = false,ajaxCallback;
// ajaxRequest: Sets up a request
function ajaxRequest(filename) {
try {
// Firefox /IE7 /Others
ajaxreq = new XMLHttpRequest();
} catch (error) {
try {
// IE5 / IE6
ajaxreq = new ActiveXOject("Microsoft.XMLHTTP");
} catch (error) {
return false;
}
}
ajaxreq.open("GET",filename);
ajaxreq.onreadystatechange = ajaxResponse;
ajaxreq.send(null);
}
// ajaxResponse: Waits for response and calls a function
function ajaxResponse(){
if(ajaxreq.readyState != 4) return;
if(ajaxreq.status == 200) {
// if the request succeed...
if(ajaxCallback) ajaxCallback();
}else alert("Request failed: " + ajaxreq.statusText);
return true;
}
开头的var ajaxreq = false,ajaxCallback;是声明ajaxreq对象吗?ajaxCallback在这个地方是什么意思?初学JavaScript,请前辈指教哈
function ajaxResponse(){
if(ajaxreq.readyState != 4) return;
if(ajaxreq.status == 200) {
// if the request succeed...
if(ajaxCallback) ajaxCallback();
}else alert("Request failed: " + ajaxreq.statusText);
return true;
}
请大神帮忙解释下这个4 和 200吧?还有别的值吗?
var ajaxreq = false,ajaxCallback;
只是声明了 两个变量, 形同c语言的 int a=b,c;
ajaxCallback 这里只是声明,实际在用时是个回调,ajaxCallback = function(){//……}
注意看注释"global variables to keep track of the request and the function to call when done";这两个变量在下面的函数里要用到,所以先声明后引用,没什么问题啊。
ajaxreq=false
这一句感觉不赋值也可以。这个多声明的简写,其实就是