jQuery - Callback
jQeury1.7からCallbackの仕組みを提供している
Callbacks対象生成
jQeury.Callbacks(flags)
flags種類
- once : 一回だけfire
- memory : 前回の引数をキャッシュする
- unique : 重複する関数なし
- stopOnFalse : falseを返す関数で実行中止
Callbacksのメソッド
- add(callbacks) : 追加
fire(args) : 実行
lock() : locak状態にする
- disable() : 使用禁止
- remove(callbacks) : 削除
empty() : 削除
fired() : 一回以上よばれているのか判定
- has(callback) : callbackが存在するのか判定
- locked() : lock状態なのか判定
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title> jQuery.Callbacks </title> </head> <body> <script type="text/javascript" src="jquery-1.12.0.min.js"> </script> <script type="text/javascript"> function fn1(value) { document.writeln("fn1実行 : " + value + "<br />"); } function fn2(value) { document.writeln("fn2実行 : " + value + "<br />"); return false; } // Callbacks生成 var callbacks = $.Callbacks(); // 追加 callbacks.add(fn1); // 実行 callbacks.fire("引数aaa"); // 追加 callbacks.add(fn2); document.writeln("<hr/>"); // 実行 callbacks.fire("引数bbb"); // 削除 callbacks.remove(fn1); document.writeln("<hr/>"); // 実行 callbacks.fire("引数ccc"); </script> </body> </html>