ajax循环执行
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ajax循环执行,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1779字,纯文字阅读大概需要3分钟。
内容图文
// ajax执行批量操作 !function (w) { //ajax构造函数var ajaxConstructor = function (batchAjax, backCall) { this.run = false; this.isOk = false; this.backCall = backCall ? backCall : null; batchAjax.addajax(this); } ajaxConstructor.prototype.funok = function () { this.run = false; this.isOk = true; }; ajaxConstructor.prototype.funrun = function (force) { var _self = this; if (force) { _self.isOk = false;//强制执行 } if (_self.run || _self.isOk) { return; } _self.run = true; this.backCall(function () { _self.funok.call(_self); }); }; //批量操作ajaxvar batchAjax = function () { this.isOk = false; this.okNum = 0; this.ajaxLen = 0; this.ajaxArray = []; this.callBack; } batchAjax.prototype = { addajax: function (ajax) { this.ajaxArray.push(ajax); }, ok: function () { var ajaxArrayItem = this.ajaxArray[this.okNum]; ajaxArrayItem.run = false; ajaxArrayItem.isOk = true; this.okNum++; if (this.okNum >= this.ajaxLen && this.callBack) { this.callBack(); return; } this.run();//goon }, run: function (call) { var _slef = this; if (!this.ajaxLen) { this.ajaxLen = this.ajaxArray.length; } if (!this.callBack) { this.callBack = call; } if (this.ajaxLen) { var ajaxArrayItem = _slef.ajaxArray[_slef.okNum]; ajaxArrayItem.run = true; //已执行了ajax且成功处理if (ajaxArrayItem.isOk) { _slef.ok.call(_slef); return; } //开始执行ajax ajaxArrayItem.backCall(function () { _slef.ok.call(_slef); }); } }, result: function () { if (this.okNum >= this.ajaxArray.length) { returntrue; } } } window.batchAjaxs = function (call, currBatchAjax) { var _batchAjax; if (currBatchAjax) { _batchAjax = currBatchAjax; } else { _batchAjax = new batchAjax(); } return { batchAjax: _batchAjax, ajaxConstructor: new ajaxConstructor(_batchAjax, call) } }; }(window);
原文:http://www.cnblogs.com/yc-code/p/5719115.html
内容总结
以上是互联网集市为您收集整理的ajax循环执行全部内容,希望文章能够帮你解决ajax循环执行所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。