デザイナーにも分かりやすいjQuery入門講座|jQueryの使い方

このエントリーをはてなブックマークに追加
索引
Core:コアとなる仕組み
Selectors:セレクタ
Attributes:属性
Traversing:対象の変更
Manipulation:操作
CSS:スタイルシート
Events:イベント
Effects:演出効果
Ajax:xml等との連携
Utilities:ユーティリティ
Data:データ
Miscellaneous:諸々
Deferred:処理管理
Callbacks:コールバック
Internals:内部処理

callbacks.empty( )コールバックのリストから全てのfunctionを除外

構文

コールバックのリストから全てのfunctionを除外返値:callbacksオブジェクト
callbacks.empty( )ver1.7〜

機能

コールバックのリストから全てのfunctuionを除外します

解説

コールバックのリストから全てのfunctionを除外します

サンプル(empty/01.html)を開いてbody内に2つのp要素が追加されていることを確認してください。それぞれid属性でpink、greenと設定されています。button要素も2つあり、それぞれid属性でfire、emptyと設定されています。

<button id="fire">fire</button>
<button id="empty">empty</button>
<p id="pink"></p>
<p id="green"></p>

jQueryでは、まず以下の部分を確認してください。callbacks.addメソッドを利用してコールバックのリストに「pinkFunc」と「greenFunc」を追加しています。

var myCall = $.Callbacks();
myCall.add([pinkFunc,greenFunc]);

2つのfunctionは以下の様に記述され、各p要素に「hello」と表示します。

function pinkFunc(){
	$("p#pink").append("hello");
};
function greenFunc(){
	$("p#green").append("hello");
};

続いて以下の部分を確認してください。id属性がfireのbuttonをクリックするとcallbacks.fireメソッドを利用してコールバックに登録された「pinkFunc」と「greenFunc」を実行します。

$("button#fire").click(function(){
	myCall.fire();
});

実際にfireボタンをクリックすると、両方のp要素に「hello」と追加されます。

そして、以下の部分を確認してください。id属性がemptyのbuttonをクリックするとcallbacks.emptyメソッドによって、コールバックのリストからすべてのfunctionが除外されます。

$("button#empty").click(function(){
	myCall.empty();
});

結果として、emptyボタンをクリックすると全てのfunctionが除外され、fireボタンをクリックしても全てのp要素で「hello」が追加されなくなります。

関連項目

特定のfunctionだけを除外したい場合はcallbacks.removeメソッドを利用してください。