加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

任何情况都有效的ajax全局回调

发布时间:2020-12-16 01:47:51 所属栏目:百科 来源:网络整理
导读:这儿说的任何情况,就是使用任意框架的ajax函数,或不使用任何框架的原生ajax,本方法总是有效。另,本方法js在任意位置执行均可生效。特殊说明: 浏览器需支持XMLHttpRequest对象,对使用activex的垃圾ie自己想办法。 简单的东西直接上代码: var oldSend =
这儿说的任何情况,就是使用任意框架的ajax函数,或不使用任何框架的原生ajax,本方法总是有效。另,本方法js在任意位置执行均可生效。特殊说明: 浏览器需支持XMLHttpRequest对象,对使用activex的垃圾ie自己想办法。

简单的东西直接上代码:

var oldSend = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function(){
  console.log(arguments); //这儿写请求的处理,也可以终止请求
  var oldCallback = this.onreadystatechange;
  this.onreadystatechange = function(){
    if(this.responseText) { // 这儿可以获取到响应
      console.log(this.responseText);
    }
    oldCallback.apply(this,arguments);
   }
  oldSend.apply(this,arguments);
}

最后,友情提示下写js代码的一条原则,尤其是写组件时:

不要在内置对象原型上扩展或修改!

不要在内置对象原型上扩展或修改!

不要在内置对象原型上扩展或修改!

重要的事情说三遍,本方法修改了内置对象的原型方法,所以请谨慎使用。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读