<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>xxx</title> <script src="https://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js"></script> </head> <body> <script> function xxx(){ $(function () { var x1 = function( value ) { alert( "x1: " + value ); }; var callbacks = $.Callbacks(); callbacks.add( x1 ); // 添加函数 "x1" 到列表 callbacks.fire( "hello" );// 传入参数调用所有回调列表函数 callbacks.empty(); alert("确定清空回调列表:"+callbacks.has(x2)); var x2 = function( value ) { alert( "x2: " + value ); }; var callbacks = $.Callbacks(); callbacks.add( x2 ); // 添加函数 "x2" 到列表 //callbacks.disable();//禁用函数 //alert("确定是否已禁用:"+callbacks.disabled());//true callbacks.fire( "hello" ); // 传入参数调用所有回调列表函数 alert( "是否有函数回调:"+callbacks.fired() ); //callbacks.remove(x1); //删除函数 }); }; function xx(){ $(function () { //将被添加到列表的一个简单的函数 var log = function( value1, value2 ) { alert( "Received: " + value1 + "," + value2 ); }; var callbacks = $.Callbacks(); // 添加函数到列表 callbacks.add( log ); // 使用上下文"window"调用回调列表 // 和一个数组参数 callbacks.fireWith( window, ["foo","bar"]); // 输出: "Received: foo, bar" var xxx = function( value, value ) { alert( "xxx" ); } callbacks.add( xxx ) alert( callbacks.has( log ) );//是否有函数回调 true alert( callbacks.has( xxx ) );//是否有函数回调 false /* // 锁定回调列表 callbacks.lock(); //确定是否被锁定 alert(callbacks.locked); //true //尝试再次调用回调列表 callbacks.fire( "world" ); // 当列表被锁定,将不能调用任何项,所以“world”不会被传入执行 */ }) }; </script> <button οnclick="xxx()">回调函数</button> <button οnclick="xx()">回调函数2</button> </body> </html>