fmpq.com
源代码:
点击运行
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Fmpq教程(fmpq.com)</title> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/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"因为参数被储存在内存中 // 添加bar函数到列表 callbacks.add( bar ); callbacks.fire( "youHadMeAtHello" ); // 输出 "bar: hello"因为列表依旧被锁定 // 并且参数值依然被储存在内存中 }) </script> </body> </html>
运行结果