位置: 编程技术 - 正文

jQuery.Callbacks()回调函数队列用法详解

编辑:rootadmin

推荐整理分享jQuery.Callbacks()回调函数队列用法详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了jQuery.Callbacks()回调函数队列用法。分享给大家供大家参考,具体如下:

1、jQuery.Callbacks

The jQuery.Callbacks() function, introduced in version 1.7, returns a multi-purpose object that provides a powerful way to manage callback lists. It supports adding, removing, firing, and disabling callbacks.

The $.Callbacks() function is internally used to provide the base functionality behind the jQuery $.ajax() and $.Deferred() components. It can be used as a similar base to define functionality for new components.

接下来,我们分别看下四个标准的控制标志。

1.1 once

创建的 callbacks 对象只允许被 fireWith() 一次 [注意:方法fire() 是 fireWith() 的外观模式]。

1.2 memory

在调用 add() 方法时,如果这时 callbacks队列 满足 fired && firing = false(真执行完毕) && memory(需要在构造函数指定),那么add() 进去的回调函数会立即执行,而这个 add 进去的回调函数调用时的参数存储在 memory 变量中。memory 变量用于存储最后一次调用 callbacks.fireWith(...) 时所使用的参数 [context, arguments]。

If the Callbacks object is created with the "memory" flag as its argument, additional functions may be added and fired after the callback list is locked.

1.3 unique

jQuery.Callbacks()回调函数队列用法详解

回调函数列表中的函数是否可以重复,该特性与 add() 方法有关,可以避免在回调函数列表中加入多个相同回调函数。

1.4 stopOnFalse

默认情况下,当执行 fireWith() 方法时,整个回调函数列表中的所有函数都会顺序执行,但如果设置了stopOnFalse,那么当某个函数返回false时,后边的函数将不再执行。即使设置了memory,再次添加的函数也不会执行了,即一旦某个函数返回 false 的情况下,会禁用 memory 功能。但如果没设置”once”,再次调用fire可以重新触发该callbacks。

2. memory 回调队列

3、 jQuery.CallBacks 源码

说明:为了便于理解,修改了部分源码,减少了一些功能~~~

4、胡思乱想

jQuery.Callbacks() 方法的核心是 fire() 方法,将该 fire() 方法被封装在函数中不可直接访问,因此像 memory、firing、fired 这些状态对于外部上下文来说是不可更改的。

还有需要注意的是,如果回调函数中使用了 this 对象,可以直接用这个 this 来访问self对象的公有API。当然,也可以用 fireWith() 自己指定 this 的引用对象。

jQuery.Callbacks()的核心思想是 Pub/Sub 模式,建立了程序间的松散耦合和高效通信。

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

jQuery实例—选项卡的简单实现(js源码和jQuery) 分别利用javascript的源码和jQuery来实现一个简单的选项卡,对比各自的步骤。!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""

使用jquery获取url及url参数的简单实例 使用jquery获取url以及使用jquery获取url参数是我们经常要用到的操作1、jquery获取url很简单,代码如下:window.location.href;其实只是用到了javascript的基础的win

深入理解jQuery 事件处理 浏览器的事件模型DOM第0级事件模型1.Event实例他的属性提供了关于当前正被处理的已触发事件的大量信息。这包括一些细节,比如在哪个元素上触发的事

标签: jQuery.Callbacks()回调函数队列用法详解

本文链接地址:https://www.jiuchutong.com/biancheng/386686.html 转载请保留说明!

上一篇:简单实现的JQuery文本框水印插件(jquery简单吗)

下一篇:jQuery实例—选项卡的简单实现(js源码和jQuery)(jquery 选择)

  • 没有发票先入账怎么办
  • 个税申报人员报送成功怎么删除
  • 京东公户的钱怎么转出来
  • 房地产小规模纳税人预缴税款如何填申报表
  • 装卸搬运服务属于什么税目
  • 合伙企业借款利息收入个税
  • 增值税专用发票电子版
  • 民办非营利组织幼儿园清算时固定资产如何处理
  • 退休人员工资可以提福利费吗
  • 查补的税款怎样做账
  • 运输公司的固定资产怎么提折旧
  • 事业单位经营结余为负数的原因
  • 收到一达通退税款怎么做账
  • 转出未交增值税借方余额怎么处理
  • 淘宝店注册公司流程
  • 季度末需要结转什么科目
  • 非独立核算分公司个税怎么申报
  • 变更法人税务怎么变更
  • 高新技术企业优惠政策叠加
  • 长期股权投资的初始计量
  • 利润总额要减去营业外支出吗
  • 更正申报以前个税的处理方法
  • 现金流量表附表的其他指的是什么
  • 福利费计提包括奖金吗
  • 如何关闭windows10自动更新
  • 怎样调整以前年度多计的收入
  • 发出材料成本差异会计分录
  • 怎么登记总分类账簿
  • 其他应付款在现金流量表怎么填
  • 全年一次性奖金计税方式
  • 分公司改为子公司的所得税业务处理?
  • php5 mysql教程
  • 开发商没交税
  • 确保政府采购
  • 企业所得税的基本税率是多少?
  • 购买股票的会计科目
  • 换出长期股权投资的会计处理
  • 设计公司的设计提成方案
  • yolov3原理及代码解析
  • thinkphp5 ajax
  • css动画效果代码
  • 销售提成占比
  • 长期待摊费用装修费摊销年限
  • 不良品扣款应入哪个科目
  • 免征增值税的规定
  • 小规模纳税人可以开增值税专用发票吗
  • 填写发票票种核实怎么填
  • 公司年产值怎么计算
  • 进出口额等于进口额加出口额吗
  • wordpress编辑文章
  • 我想问一下移动
  • 销售农产品是否交消费税
  • 哪些进项发票不能认证
  • 应收票据周转率公式
  • 福利企业增值税退税标准
  • 公司注销流程是哪些
  • mysql中数据表的关联关系有哪三种?
  • win10系统自带的游戏在哪
  • win7系统安装教程不用u盘
  • linux修改时间格式
  • linux配置光纤
  • 如何使用调制解调器
  • win7安装软件提示停止工作
  • win10预览版和正式版
  • win10系统更新出错怎么办
  • Unity3D游戏开发标准教程
  • ExtJS4 表格的嵌套 rowExpander应用
  • shell脚本 定义变量
  • java框架怎么用
  • opengl视角跟随鼠标方向移动
  • linuxyum安装php7
  • angular js表达式
  • jquery单击事件和双击事件
  • 遵从与尊从
  • 国家税务局文件查询
  • 缴款单号怎么交学费
  • 土地增值税计税
  • 纳税申报表有哪几种类型
  • 小规模纳税人公司买车能抵多少税
  • 国外工资个人所得税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设