JQuery.Callbacks系列一:api使用详解

本文详细介绍了jQuery 1.7+引入的JQuery.Callbacks功能,包括创建对象、添加删除回调、触发函数、状态判断以及四种创建选项的使用。主要内容涉及add、remove、fire、lock等方法,以及once、memory、unique、stopOnFalse选项的解释。
摘要由CSDN通过智能技术生成

JQuery.Callbacks是jQuery1.7+之后引入的,用来进行函数队列的add、remove、fire、lock等操作,并提供once、memory、unique、stopOnFalse四个option进行一些特殊的控制。既然是新加入的功能,那么就有其特定的使用场景和优势。本文主要是介绍下Callbacks相关API的使用,关于Callbacks的使用场景以及源码等将会在后续博客中进行说明。我使用的JQuery版本是1.11.1


1、创建Callbacks对象

如果要使用Callbacks的相关API,必须要先创建Callbacks对象。创建Callbacks对象的时候,可以指定参数,也可以不指定参数。不同参数值的Callbacks具有不同的功能,后面再介绍,这里只需要知道如何创建Callbacks对象即可。

// 默认方式创建callback
var callbacks = $.Callbacks();

// 4种形式的callback:once、unique、stopOnFalse、memory
var onceCallbacks = $.Callbacks('once');
var uniqueCallbacks = $.Callbacks('unique');
var stopOnFalseCallbacks = $.Callbacks('stopOnFalse');
var memoryCallbacks = $.Callbacks('memory');
还有一点需要说明:每次调用$.Callbacks()方法,返回的都是不同的Callbacks对象。即这是一个工厂方法,每次调用都会新建一个对象,对象之间是相互独立的。

var callbacks1 = $.Callbacks();
var callbacks2 = $.Callbacks();
alert(callbacks1 == callbacks2);//false


2、添加和删除回调函数

Callbacks对象其实就是一个函数队列,获得Callbacks对象之后 ,就可以向这个集合中增加或者删除函数。add和remove功能相反,函数参数是相同的,empty()删除回调列表中的所有函数。

function fn1( value ) {
  console.log("fn1:" + value );
}
 
function fn2( value ) {
  c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值