Показать сообщение отдельно
  #1 (permalink)  
Старый 10.08.2018, 12:29
Аспирант
Отправить личное сообщение для Самовар Посмотреть профиль Найти все сообщения от Самовар
 
Регистрация: 28.03.2017
Сообщений: 31

Событие для массива объектов
Имеется гексагональное игровое поле состоящее из дмумерного массива объектов Image. Необходимо создать функцию онклик, чтобы по клику на любой хекс выдавало текст. Вот генерация поля

var fieldStartX = 0;
var fieldStartY = 0;

var fieldHex = [];
for (var i = 0; i < 10; i++) {
    fieldHex[i] = [];
    fieldStartY = fieldStartY + 45;
    if (i % 2 == 0) fieldStartX = 70;
    else fieldStartX = 0;
    for (var j = 0; j < 6; j++) {
        fieldHex[i][j] = new Image();
        fieldHex[i][j].width = 100;
        fieldHex[i][j].height = 100;
        fieldHex[i][j].style.position = "absolute";
        fieldHex[i][j].style.left = fieldStartX + "px";
        fieldHex[i][j].style.top = fieldStartY + "px";
        fieldHex[i][j].src = "image/hex_blue.png";

        document.body.appendChild(fieldHex[i][j]);

        fieldStartX = fieldStartX + 140;
    }
}


функция должна быть такого вида
fieldHex[][].onclick = function(){
	alert("Текст");
}


ПОнятно, что в таком виде не работает. Если проставить конкретные значения fieldHex[1][1].onclick то работает, но это совсем не то, что нужно. Помогите сделать функцию обработчик события клика, чтобы были кликабельны все элементы массива fieldHex

вот ссылка кодепен для удобства https://codepen.io/Sergeev2/pen/LBMgKa
Ответить с цитированием