Показать сообщение отдельно
  #1 (permalink)  
Старый 12.05.2016, 14:07
Интересующийся
Отправить личное сообщение для pepel266 Посмотреть профиль Найти все сообщения от pepel266
 
Регистрация: 31.10.2015
Сообщений: 10

получить индекс произвольного элемента в двумерном массиве.
Есть функция возвращающая двумерный массив заполненный дивами:
function createMatrix(width, height) {
	var matrix = [];
	for (var i = 0; i < width; i++) {
        matrix[i] = [];
		for (var j = 0; j < height; j++) {
            var div = document.createElement('div');
            div.className = 'cell';
            matrix[i][j] = div;
			playField.appendChild(matrix[i][j]);
		}
	}
	return matrix;
}

var f = createMatrix(width, height);

Далее красим произвольный элемент массива в синий цвет:
function myRandom (from, to)  {
		return Math.floor((Math.random() * (to - from + 1)) + from);
}
function setCell(row, col, color, val) {
	// Функция принимает координаты ячейки
	// если val == true, закрашивает ячейку,
	// иначе убирает закраску.
	var targetCell = f[row][col];
	if(val == true) {
		targetCell.style.backgroundColor = color;
	}else {
		targetCell.style.backgroundColor = '';
	}
	return targetCell;
}
var cell = setCell(myRandom (0, width-1), myRandom (0, height-1),'blue', true);

Вопрос: Как получить индекс покрашенной ячейки в этом массиве?
Ответить с цитированием