Если вы используете JQuery (1.7.1), вы можете добавить событие click для каждого изображения, используя live, которое добавляет событие click к dom на лету. Поэтому измените свой код следующим образом. Комментарии в методе. Дайте мне знать, если это работает для вас.
Rob
Не уверен, если у вас есть какой-нибудь код для захвата плитки с изображения, но вы могли бы использовать это ...
Tileset для игры на холсте HTML5
var iCount = 1
for(var i=0;i<20;i++){
for(var j=0;j<20;j++){
iCount = iCount +1
//create image in the loop
var image = new Image();
image.src = "tile.png";
image.attr('class', 'theimage_' + iCount );
//in the loop each image has a unique class name which you
//can attach to the dom via jquery live
ctx.drawImage(image,i,j,20,20,i,j,20,20);
//you can either attach some logic here or outside of the loop
$('.theimage_' + iCount ).live('click', function() {
alert("You Clicked: " + '.theimage_' + iCount );
});
}
}