2012-03-27 13 views
1

アプリケーションでハイチャートのAPIを使用しています。ハイチャート画像クリックイベント

以下のURLは問題のシナリオを示します。

http://jsfiddle.net/jnjqt/40/

私は、画像ごとに異なるクリックイベントを必要としています。しかし、私は各画像について同じ結果を得ています。 イメージごとに対応するiのアラート値を取得すると同様に、私の問題は解決されます。

ありがとうございます。

+0

を」このコードは、あなたの問題を解決する必要があり

for (var i = 0; i < chart.series[0].data.length; i++) { ...... } 

あなたはちょうどあなたが次のループを作る機能を返却する必要があります私のオフィスからjsfiddleに行きません。ハイチャートコードとクリニックコードを投稿できますか? – Brian

+0

強力なjavascriptクロージャの一般的な問題 – antonjs

答えて

3

これは一般的な問題です。クロージャはループ内で(forまたはwhile)使用し、常にインクリメントの最後の値を保持します。ここでは解決

 .on('click', function(i) { 
      return function() { 
       alert(" image:"+i); 
      } 

     }(i)) 

::私ができるhttp://jsfiddle.net/jnjqt/42/

関連する問題