-
ID:8.kRU2 さんの質問

jQo.on(’eventName’,function(){【A】});としたとき
 .on(’eventName’,fn);がイベントリスナー
 function(){}がイベントハンドラー(またはコールバック関数)
という認識で間違いないですよね?自信ないですが....
(【A】の部分はイベント処理とでも言ったらいいんでしょうか)

この場合イベントハンドラーに渡す引数はどうやって定義しているんでしょう?

例えば
jQo.on(’eventName’,function( a, b, c ){});
このa,b,cで渡すための元の記述が知りたいのです。

よろしくお願いいたします。

みんなの回答 5 件

ID:QrhC7g さんの回答

クリックしたターゲットに、値を持たせて、それを参照してはどうですか?
クリック時に、a,b,cはどういった値ですか?クリックはイベントですので、それ
に個別の引数という意味がイマイチわかりません。

個別のイベントオブジェクトの属性値を定義したいということでしょうか?

ID:8.kRU2

すみません質問がわるかったです。クリックにかぎらずオリジナルのイベントに対してイベントハンドラーをバインドしたとき、イベントハンドラーに値を伝えるための引数の実装についてご教示頂きたいです。

ID:QrhC7g

こんな感じかな?
$("#main").on("click", ".box", {test:10}, function (eo){
alert(eo.data.test);
});

ID:TdSatl さんの回答

トピ主が言いたいのはjQueryが提供している渡し方じゃないと思う。

要はネイティブなJavaScriptでコールバック関数に引数を渡すにはどうしたいいかってことでしょ?

ID:8.kRU2

ですね。。 よくよく考えればイベントにかぎらないですね。。

ID:EAaLRn さんの回答

適当なことを書くけど、JSに限らず、ASとかECMA系に直接的な機能はないと思う。なくてもどうにでもなるけどね。

ID:8.kRU2

ありがとうございます。

ID:2av1.r さんの回答

jQueryソースコードのコールバックパターンの実装方法のことでしょうか?特に引数の渡し方で引っかかる点はないかと思いますが。。。

ID:8.kRU2

回答ありがとうございました

ID:8.kRU2 さんの回答

自己解決しました。
bind() を使うことで、引数をとるコールバック関数を実装することができるようです

最終更新日:2014-06-27 (1,722 views)

関連するトピックス

ページ上部に戻る