Я пишу простую функцию JavaScript, которая принимает td (ячейку таблицы) и либо придает ей красный стиль границы, либо отключает это. Код:Назначение стиля CSS переменной в JavaScript
function doStuff(theCell)
{
var highlight = "2px solid rgb(255, 0, 0)";
if(borderStyle==highlight)
{
theCell.style.border="";
}
else
{
theCell.style.border=highlight;
}
}
Это прекрасно работает. Однако, чтобы попытаться сделать уборщик кода я пытался заменить стиль границы CSS с помощью переменного (объявлено чуть ниже первого):
var borderStyle = theCell.style.border;
Это хорошо работает, когда я использую его в сравнении равенства, но не тогда, когда Я помещал его в назначение стиля в предложении 'else'.
Должно быть, я пытаюсь сделать что-то очень глупое. Может ли кто-нибудь объяснить.
Где вы определяете borderStyle в своей функции? – hakJav
'theCell.style.border' возвращает' string', позже в блоке 'else', вы просто обновляете строку, а не присваиваете ее элементу. – Rayon
* Я, должно быть, пытаюсь сделать что-то очень глупо. Предположим, что присвоение 'borderStyle' присваивает * ссылку *, и изменения, внесенные в' borderStyle', будут влиять на 'theCell.style.border'. Это предположение неверно. –