您可以在
ajaxSetup
中覆盖xhr函数,甚至可以覆盖每个$.ajax调用.这在
$.ajax
文档中有记录(感谢尼克!).
如果您想要始终执行此操作,您的代码可能看起来像这样(未经测试):
(function() { var originalXhr = jQuery.ajaxSettings.xhr; jQuery.ajaxSetup({ xhr: function() { var req = originalXhr(); if (req) { // Add your progress handler } return req; } }); })();
…或像这样(live example)仅针对特定请求:
$.ajax({ url: "path/to/resource",xhr: function() { var req = $.ajaxSettings.xhr(); if (req) { // Add your handler here } return req; } });
不幸的是,尽管记录了覆盖xhr,但是当前配置的位置(jQuery.ajaxSettings.xhr)似乎并不存在,所以从技术上讲,你依旧使用jQuery.ajaxSettings.xhr来依赖于未记录的功能.码.你只需要仔细检查每个点发布时是否仍然存在,它可能不会过多地移动(并且jQuery.ajaxSettings至少在文档中提到,here).
原文地址:https://www.jb51.cc/ajax/160230.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。