获取 Ajax 对象的兼容性写法 + Ajax 同步加载文件
// 获取 Ajax 对象
var getAjax = function () {
var xmlHttp = null;
try{
xmlHttp = new XMLHttpRequest();
} catch (MSIEx) {
var activeX = [ "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP" ];
for (var i=0; i < activeX.length; i++) {
try {
xmlHttp = new ActiveXObject( activeX[i] );
} catch (e) {}
}
}
return xmlHttp;
};
// Ajax 同步加载文件
var loadFileByAjax = function (url){
var xmlHttp = getAjax();
if (!xmlHttp) return null;
//采用同步加载
xmlHttp.open("GET", url, false);
//发送同步请求
xmlHttp.send(null);
//4代表数据发送完毕
if ( xmlHttp.readyState == 4 ) {
//0为访问的本地,200到300代表访问服务器成功,304代表没做修改访问的是缓存
if((xmlHttp.status >= 200 && xmlHttp.status <300) || xmlHttp.status === 0 || xmlHttp.status == 304) {
return xmlHttp.responseText;
}
}
return null;
};