jquery09--Callbacks : 回调对象
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script src="jquery-2.0.3.js"></script>
- <script>
- //Callbacks管理回调。-------------------------------------------------------
- function aaa(){
- alert(1);
- }
- function bbb(){
- alert(2);
- }
- function ccc(){
- alert(3);
- }
- var cb = $.Callbacks();
- cb.add( aaa );
- cb.add( bbb );
- cb.add( ccc );
- cb.fire();
- //绑定事件,观察者模式
- document.addEventListener('click',function(){ alert(1); },false);
- document.addEventListener('click',function(){ alert(2); },false);
- document.addEventListener('click',function(){ alert(3); },false);
- ---------------------------------------------------------------------------
- function aaa(){
- alert(1);
- }
- (function(){
- function bbb(){//局部作用域
- alert(2);
- }
- })();
- aaa();
- bbb();
- ---------------------------------------------------------------------------
- var cb = $.Callbacks();
- function aaa(){
- alert(1);
- }
- cb.add(aaa);
- (function(){
- function bbb(){
- alert(2);
- }
- cb.add(bbb);
- })();
- cb.fire();//1 2
- ----------------------------------------------------------------------
- once
- memory
- unique
- stopOnFalse
- add
- remove
- has
- empty
- disable
- disabled
- lock
- locked
- fireWith
- fire
- fired
- -------------------------------------------------------------------------
- function aaa(){
- alert(1);
- }
- function bbb(){
- alert(2);
- }
- function ccc(){
- alert(3);
- }
- var cb = $.Callbacks();
- cb.add( aaa );
- cb.add( bbb );
- cb.add( ccc );
- cb.remove( bbb );
- cb.fire();
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script src="jquery-2.0.3.js"></script>
- <script>
- function aaa(){
- alert(1);
- }
- function bbb(){
- alert(2);
- }
- function ccc(){
- alert(3);
- }
- -------------------------------------------------------------------------
- var cb = $.Callbacks('once');
- cb.add( aaa );
- cb.add( bbb );
- cb.fire();
- cb.fire();//触发一次
- -------------------------------------------------------------------------
- var cb = $.Callbacks('memory');
- cb.add( aaa );
- cb.fire();
- cb.add( bbb );//弹出来,不写memory不谈,有memory又调用一次fire()
- --------------------------------------------------------------------------
- var cb = $.Callbacks('unique');
- cb.add( aaa );
- cb.add( aaa );
- cb.fire();//只执行一次
- ---------------------------------------------------------------------------
- function aaa1(){
- return false;
- alert(1);
- }
- var cb = $.Callbacks('stopOnFalse');
- cb.add( aaa1 );
- cb.add( bbb );
- cb.fire();//只谈1不谈2
- ----------------------------------------------------------------------------
- var cb = $.Callbacks('once memory');//组合形式
- cb.add( aaa );
- cb.fire();//2也弹出来
- cb.add( bbb );
- cb.has (bbb );//true
- cb.fire();//不执行
- ------------------------------------------------------------
- options : { once : true , memory : true }
- optionsCache : {
- 'once memory' : { once : true , memory : true }
- }
- ----------------------------------------------------------
- function aaa(n){
- alert('aaa' + n);
- return false;
- }
- function bbb(n){
- alert('bbb'+n);
- }
- var cb = $.Callbacks();
- cb.add(aaa,bbb);
- cb.fire('hello');
- cb.fire('hello');
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script src="jquery-2.0.3.js"></script>
- <script>
- ---------------------------------------------------------------------
- var bBtn = true;
- function aaa(){
- alert(1);
- if(bBtn){
- cb.fire();
- bBtn = false;
- }
- }
- function bbb(){
- alert(2);
- }
- var cb = $.Callbacks();
- cb.add( aaa );
- cb.add( bbb );
- cb.fire();
- ----------------------------------------------------------------------
- function aaa(){
- alert(1);
- }
- function bbb(){
- alert(2);
- }
- var cb = $.Callbacks('once memory');
- cb.add( aaa );
- cb.fire();
- cb.add( bbb );
- cb.fire();
- ---------------------------------------------------------------------------
- function aaa(){
- alert(1);
- }
- function bbb(){
- alert(2);
- }
- var cb = $.Callbacks('memory');
- cb.add( aaa );
- cb.fire();
- cb.lock();
- cb.add( bbb );
- cb.fire();
- </script>
- </head>
- <body>
- </body>
- </html>
jquery09--Callbacks : 回调对象的更多相关文章
- jquery源码01---(2880 , 3042) Callbacks : 回调对象 : 对函数的统一管理
// optionsCache : { 'once memory' : { once : true , memory : true } } var optionsCache = {}; // once ...
- jquery源码分析(四)——回调对象 Callbacks
借用百度百科来说明下回调函数: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数.回调函数不是由该 ...
- jQuery-1.9.1源码分析系列(五) 回调对象
jQuery.Callbacks()提供的回调函数队列管理本来是延时回调处理的一部分,但是后面将其独立出来作为一个模块.jQuery就是这样,各个模块间的代码耦合度是处理的比较好的,值得学习.虽然是从 ...
- jQuery源码笔记——回调对象
回调对象是一个多用途的回调列表对象,提供了强大的的方式来管理回调函数列表. 最简单的缓存对象 function Callbacks(){ var list = [], self = { add: fu ...
- JQuery中的回调对象
JQuery中的回调对象 回调对象(Callbacks object)模块是JQuery中的一个很基础的模块,很多其他的模块(比如Deferred.Ajax等)都依赖于Callbacks模块的实现.本 ...
- jquery的2.0.3版本源码系列(6):2880-3042行,回调对象,对函数的统一管理
目录 1 . 回调对象callbacks的演示 回调的使用有一点像事件绑定,先绑定好,等到有点击事件或者其他时就触发. <script src="js/jquery-2.0.3.js& ...
- jQuery使用():Callbacks回调函数列表之异步编程(含源码分析)
Callbacks的基本功能回调函数缓存与调用 特定需求模式的Callbacks Callbacks的模拟源码 一.Callbacks的基本功能回调函数缓存与调用 Callbacks即回调函数集合,在 ...
- WCF初探-13:WCF客户端为双工服务创建回调对象
前言: 在WCF初探-5:WCF消息交换模式之双工通讯(Duplex)博文中,我讲解了双工通信服务的一个应用场景,即订阅和发布模式,这一篇,我将通过一个消息发送的例子讲解一下WCF客户端如何为双工服务 ...
- jQuery 2.0.3 源码分析 回调对象 - Callbacks
源码API:http://api.jquery.com/jQuery.Callbacks/ jQuery.Callbacks()是在版本1.7中新加入的.它是一个多用途的回调函数列表对象,提供了一种强 ...
- jquery的回调对象Callbacks详解
Callbacks : 对函数的统一管理 Callbacks的options参数接受4个属性,分别是once : 只执行一次momery : 记忆stopOnFalse : 强制退出循环unique ...
随机推荐
- 安卓开发--HttpDemo01
package com.cnn.httpdemo01; import android.app.Activity; import android.content.Intent; import andro ...
- 2013亚洲区域赛长沙站 ZOJ 3732 Graph Reconstruction
题目链接 Graph Reconstruction 题意 给你无向图每个点的度数, 问是否存在唯一解, 存在输出唯一解, 多解输出两个, 无解输出IMPOSSIBLE 思路 这里用到了 Havel-H ...
- CUDA笔记(七)
今天集中时间找程序的问题.于是发现: 首先,程序里的kernel想要调试,必须用nsight. 于是一堆找.http://www.nvidia.com/object/nsight.html http: ...
- 织梦CMS调用文章第一张图片(非缩略图)终极方法
之前,网上流传了很多在织梦CMS中调用第一张图片的方法,但大体都一样.即删除缩略图字符串,并添加后缀.然而这种方法仅限于jpg图片或其他单独图片类的调用.如果一个站有png.JPG.gif等多种格式. ...
- 添加本地 yum源
添加本地 yum源 yum-updatesd.conf yum的主配置文件 [root@zhou ~]# cd /etc/yum.repos.d/ [root@zhou yum.repos.d]# ...
- 逻辑学总结x
逻辑学是研究事实联系: 肯定.否定: 条件 结论: 联系 规则: 的学问.
- 【Git 一】Linux安装Git
一.Git 的优势 #简单说一下 Git 的优势. 1.版本库本地化,支持离线提交,相对独立不影响协同开发. 2.支持快速切换分支方便合并,比较合并性能好. 3.分布式管理,适应不同的业务场景. 4. ...
- vue动态绑定img标签的src地址
问题代码: <li v-for="(item,index) in images" :key="index"> <img :src=" ...
- vue项目的环境变量
关于项目中环境变量的总结 背景 项目环境一般分为开发环境,测试环境,线上环境 因为每个环境的接口域名.webpack 配置都是不同的,所以在打包构建时,我们需要区分这些环境,这时就用到了环境变量 在工 ...
- bzoj1615 麻烦的干草打包机 BFS
Description Farmer John新买的干草打包机的内部结构大概算世界上最混乱的了,它不象普通的机器一样有明确的内部传动装置,而是,N (2 <= N <= 1050)个齿轮互 ...