JavaScriptの勉強の備忘録
エレメントにonclickイベントハンドラを設定する方法 その4
イベントハンドラに引数つきで関数を設定するにはちょっと工夫が必要になる
上手く行ったのは
関数ブロック本体からiを参照しないようにさらにクロージャをかませる方法
もっといい方法あるかもしれないけど
for(var i = 0;i<5;i++){
var img = document.getElementById('img'+i);
img.onclick = ( function(_i){
return function(){
func(_i);
};
})(i);
}
こんな感じ
iは即時評価されて1とか4とかになってfunction(_i)に渡される
func(i)が返り値 となってonclickに設定される
[備忘録] onclickイベントハンドラ その3 2013.03.30
[備忘録] onclickイベントハンドラ その2 2013.03.29
[備忘録] onclickイベントハンドラ その1 2013.03.28
PR
カレンダー
カテゴリ