一个极简化的Ajax封装,回调接口和浏览器兼容性较好

网络整理 - 07-26

  • */  
  •   
  • function Bajax()   
  • {   
  • }   
  •   
  • // 调试设置   
  •   
  • //-- 用户接口 -----------------------------------------------------------------   
  •   
  • // GET 请求   
  • //(URL, 回调函数[, 回调函数附加数据, 是否异步])   
  • Bajax.prototype.get = function (url, callback, fdata, asyn)   
  • {   
  •   
  •      var X = Bajax._object();   
  •          X.onreadystatechange = function()   
  •          { Bajax._callback(X, callback, fdata, _self); };   
  •   
  •          Bajax._debugger(callback);   
  •   
  •   
  •          Bajax._callback(X, callback, fdata, _self);   
  •      }   
  • }   
  •   
  • // POST 请求   
  • //(URL, POST数据, 回调函数[, 回调函数附加数据, 是否异步])   
  • Bajax.prototype.post = function (url, sdata, callback, fdata, asyn)   
  • {   
  •   
  •      var X = Bajax._object();   
  •          X.onreadystatechange = function()   
  •          { Bajax._callback(X, callback, fdata, _self); };   
  •   
  •          Bajax._debugger(callback);   
  •   
  •   
  •      X.send(sdata);   
  •   
  •          Bajax._callback(X, callback, fdata, _self);   
  •      }   
  • }   
  •   
  • // 设置出错处理函数   
  • Bajax.prototype.e_handler = function (func)   
  • {   
  • }   
  •   
  • // 创建一个兼容的XHR对象。   
  • // 改了一下:IE7中优先采用Native XHR   
  • Bajax._object = function()   
  • {   
  •      var A;   
  •              }   
  •          }   
  •      }   
  • }   
  •   
  • //-- 私有函数 -----------------------------------------------------------------   
  •   
  • Bajax._callback = function (req, callback, data, obj)   
  • {   
  •              callback(req, data);   
  •          }   
  •      }   
  • }   
  •   
  • // Debug: 显示采用的回调函数。   
  • Bajax._debugger = function (func)   
  • {   
  • }   
  •   
  • // 默认的出错处理   
  • Bajax._error = function (req, callback)   
  • {   
  • }   
  •   
  • // 提取函数名(含参数)   
  • Bajax._fname = function (func)   
  • {   
  •      var S = func.toString();   
  • }   
  • //-- End.----------------------------------------------------------------------  
  •  
  • 使用方法:
  • function callback(req, id) {   
  •      var _node = document.getElementById(id);   
  • }   
  • </script>