<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>时代Java与您共同学习(NowJava.com)</title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<div id="log"></div>
<script>
$(function () {
// 简单的测试函数
var log = function( value ) {
$( "#log" ).append( "<p>" + value + "</p>" );
};
// 两个将被添加到列表的函数
var foo = function( value ) {
log( "foo: " + value );
};
var bar = function( value ) {
log( "bar: " + value );
};
// 使用“memory”创建回调函数
var callbacks = $.Callbacks( "memory" );
// 添加测试函数foo到列表
callbacks.add( foo );
// 传入参数调用所有回调
callbacks.fire( "hello" );
// 输出 "foo: hello"
// 锁定回调列表
callbacks.lock();
// 尝试再次调用
callbacks.fire( "world" );
//当列表被锁定,将不能调用任何项
// 所以"world"不会测试
// 再次添加foo函数到列表
callbacks.add( foo );
// 尝试再次传入参数调用回调
callbacks.fire( "silentArgument" );
// 输出 "foo: hello"因为参数被储存在内存中
/**代码未完, 请加载全部代码(NowJava.com).**/
本文系作者在时代Java发表,未经许可,不得转载。如有侵权,请联系nowjava@qq.com删除。