ajaxStop()函数用于为AJAX请求的ajaxStop事件绑定处理函数。


  这是一个全局AJAX事件函数,用于在ajaxStop事件被触发时执行绑定的事件处理函数。


  jQuery官方文档描述:无论什么时候,当一个AJAX请求完成(无论成功或失败)时,jQuery会检查当前是否还有其他活跃的(未完成的)AJAX请求。如果在进程中没有找到其他活跃的AJAX请求,jQuery就会触发ajaxStop事件。此时,通过ajaxStop()函数绑定的所有事件处理函数都将被执行。


  简而言之,当一个AJAX请求结束的时候,此时没有其他活跃的AJAX请求,该请求就会触发ajaxStop事件。


  一般而言,连续执行多个AJAX请求,只有其中最后一个结束的AJAX请求会触发ajaxStop事件。等到所有AJAX请求执行完毕后,再次连续执行多个AJAX请求,还是只有其中最后一个结束的AJAX请求会触发ajaxStop事件。


  如果某个AJAX请求被禁止触发全局AJAX事件,则它不会被视为活跃的AJAX请求。


  该函数必须在jQuery对象实例上调用,ajaxStop()将为每个匹配元素绑定事件处理函数。当ajaxStop事件被触发时,所有匹配元素上绑定的处理函数都将被调用。事件处理函数内的this将指向当前DOM元素。


  你可以为同一元素多次调用该函数,从而绑定多个事件处理函数。触发事件时,jQuery会按照绑定的先后顺序依次执行绑定的事件处理函数。


  从jQuery 1.8开始,该函数只能为document对象绑定事件处理函数,为其他元素绑定的事件处理函数不会起作用。


  如果在jQuery.ajax()或jQuery.ajaxSetup()中将选项参数global设为false,可以禁止该AJAX请求触发全局的AJAX事件。


  该函数属于jQuery对象(实例)。


  语法


  jQuery 1.0 新增该函数。


  jQueryObject.ajaxStop( handler )


  参数


  参数描述


  handlerFunction类型触发该事件时,需要执行的事件处理函数。


  返回值


  ajaxStop()函数的返回值为jQuery类型,返回当前jQuery对象本身。


  示例&说明


  关于ajaxStop事件和ajaxStop事件的触发机制,你可以参考jQuery的jQuery.ajax()函数的部分源代码。


  通过以下源代码,我们可以知道:jQuery会统计当前活跃的AJAX请求数。每当开始执行一个AJAX请求时,会在活跃数上加1;每当一个AJAX请求结束时,就在活跃数上减1。如果一个AJAX请求开始时,活跃数为0,则触发ajaxStart事件;如果一个AJAX请求结束时,活跃数为0,则触发ajaxStop事件。// jQuery.ajax()函数的开头部分


  var fireGlobals = s.global; // 是否允许触发全局AJAX事件


  // 如果允许触发全局AJAX事件,并且活跃的AJAX请求数为0,则触发ajaxStart事件


  if ( fireGlobals && jQuery.active++ === 0 ) {


  jQuery.event.trigger("ajaxStart");


  }


  // ... 省略中间的源代码


  // jQuery.ajax()函数的末尾部分


  if ( fireGlobals ) {


  globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );


  // 如果允许触发全局事件,并且活跃的AJAX请求数为0,则触发ajaxStop事件


  if ( !( --jQuery.active ) ) {


  jQuery.event.trigger("ajaxStop");


  }


  }

相关文章

9个鲜为人知的HTML功能 小白怎么学习HTML5?新手入门必看 阿里巴巴常用的12个后端开发工具 sharepoint搭建文档服务器,SharePoint?Server教程 语义化标签与HTML5新增的布局标签 vector教程:如何进行项目 JetBrains PhpStorm v2021.2.0中文激活版 HTML5教程之新元素 前端基础入门:HTML5基础语法与标签 HTML5——SVG基础入门 android是前端还是后端 嵌入式开发要学哪些技能? 使用fiddler对手机APP进行抓包 HTML5薪资正一路飙升 如何才能学好HTML5开发 零基础如何迅速学习前端? html5中怎么利用canvas元素创建画布 实现html5移动端自适应布局的方法分享 HTML5移动应用开发 最佳HTML5应用开发工具有哪些? HTML5 移动页面自适应手机屏幕四类方法 html5手机网站常用的9个CSS属性 什么是web前端开发标准 Android开发用过的十大框架 Android混合开发,html5自己主动更新爬过的坑 HTML5中的移动开发框架有哪些? 分享5个主流的HTML5开发工具 HTML5开发培训教程学习之动效制作 网页开发HTML5 快速开发基于 HTML5 网络拓扑图应用 如何零基础入门前端开发? html5零基础入门学习教程(零基础学员必看) jquery删除ajax请求的方法 jquery中ajax中的参数,jquery中的ajax参数 jQuery AJAX 方法success()后台传来的4种数据详解 jquery中ajax常用的方法,jQuery ajax框架常用方法总结 jQuery AJAX中readyState与status的区别与联系 jquery ajax.then,神奇的then方法 jQuery validate+artdialog+jquery form实现弹出表单思路详解 ajax用来做什么的,jQuery是什么? java jquery ajax视频,【Ajax】之jQuery中的Ajax jquery中ajax应用之通用ajax()函数的实例 BootStrop前端框架入门教程详解 jQuery WEUI Select jquery是什么意思?jquery和js的区别是什么? 巧用案例学习jQuery框架三种事件绑定方式 jQuery 基础知识总结 引入JQuery.min.js文件 几款常用的高质量web前端框架 Jquery和bootstrap有哪些区别 easyui 验证 ajax提交表单提交表单提交