У меня есть кнопка, которая при нажатии меняет переменную между true и false. Когда true, я хочу, чтобы тест отображался синим, когда false, я хочу, чтобы текст отображался черным. Я не уверен, почему, но текст остается синим, несмотря на изменение переменной. Вот мой код:Как изменить атрибут CSS, изменив глобальную переменную?
<div id="test1">Hello</div>
<button onclick="change()">Change</button>
<script>
var swap = true;
function change(){
if(swap === true){
swap = false;
}
else{
swap = true;
}
document.getElementById('test1').innerHTML = swap;
}
if(swap === true){
document.getElementById("test1").style.color = "blue";
}
else if(swap === false){
document.getElementById("test1").style.color = "black";
}
</script>
Поскольку код, чтобы изменить цвет текста выполняется только при загрузке страницы. Вам нужно переместить код, чтобы установить цвет в метод change(). –