По нажатии на кнопку, бэкграунд в body должен менять цвет. Все работает сносно, кроме того, что нажимается она, почему-то, только со второго раза.
function ColorChange() {
if (document.body.style.backgroundColor == "black") {
document.body.style.backgroundColor = "white";
} else {
document.body.style.backgroundColor = "black";
}
}
В стилях к body следующее:
body{
background-color:black;
transition: all 4s;
}
Всё потому, что изначально у вас нет никакого цвета. Вы проверяете inline цвет.
То есть document.body.style.backgroundColor берёт цвет из <body style
, а не из таблицы стилей. Поэтому лучше было бы сделать функцию toggleClass, но если вам всё таки надо именно стили переключать, то можно сделать проверку на наличие цвета у элемента.
function ColorChange() {
var currentColor = document.body.style.backgroundColor;
alert(currentColor);
if (!currentColor || currentColor == "black") {
document.body.style.backgroundColor = "white";
} else {
document.body.style.backgroundColor = "black";
}
}
body{
background-color:black;
transition: all 4s;
}
<body>
<button onclick="ColorChange()">test</button>
</body>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
PHP Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, boolean given in testregphp on line 53
Доброго времени сутокСуть проблемы такова: есть сайт, на котором лежат примеры форм
Есть ли возможность отправить на печать и отправить на почту документ сформированный с помощью php или js? Для js использую jszip