Я создаю интерфейс, состоящий из 9 ячеек в таблице. Когда человек мыши над клеткой, я хочу, чтобы другие ячейки стали видимыми, и изменили текстовое содержимое некоторых из ячеек. Я могу сделать это просто отлично, если я создаю отдельные функции для изменения содержимого каждой ячейки, но это безумие.Javascript для изменения функции innerHTML не работает
Я хочу, чтобы одна функция меняла текст в зависимости от задействованных ячеек. Я создал функцию, которая может принимать n аргументов и циклы путем внесения изменений на основе аргументов, переданных функции. Это не работает.
Код для функции ниже. Если я его назову, onMouseOver="changebox('div3')"
, аргумент переводит его в функцию при наведении мыши на ячейку. Если я раскомментирую оператор document.write (cell), в этом случае он выводит div3 на экран. Итак ... почему он не вносит никаких изменений в содержимое ячейки div3?
function changebox() {
for (var i = 0; i < arguments.length; i++) {
var cell = document.getElementById(arguments[i]).id;
var text = "";
if (cell == 'div3') {
text = "Reduced Travel";
} else if (cell == 'div4') {
text = "Reduced Cost";
}
//document.write(cell)
cell.innerHTML = text;
}
}
Вы присвоили 'cell' значение атрибута' id'. Это не элемент – Phil