318 views
この記事は最終更新から 559日 が経過しています。
1. やりたいこと
コールバック関数に独自のパラメータを渡したい。
2. やってみる
イベントハンドラの登録時に、任意のパラメーターを JSON形式で付加することができる。
まずは手順だけ記録しておく。
後日詳細を追記する かも…
下記の例では、独自パラメーター i を index というラベル名で渡すように命令している。
for( i = 0 ; i < array_element.length ; i++ ){ array_element[i].on('mousemove touchmove', {index: i}, function(e){ var index = e.data.index; // 独自パラメーターを取得 // 処理を記述... });
【注意】
以下のように書いてしまうと、コールバック関数内では常に
i = array_element.length
として実行されてしまう。
for( i = 0 ; i < array_element.length ; i++ ){ array_element[i].on('mousemove touchmove', function(e){ var index = i; // 処理を記述... });
つまり…
要素数が 2であれば、ターゲットオブジェクトの序数に関係なく、常に i = 2 として関数が実行されてしまうので注意する。