Анимации при клике на кнопку
Часть раздела JavaScript in Action путешествия по HTML на Coddy — урок 20 из 27.
Иногда мы хотим, чтобы кнопки давали мгновенную обратную связь при нажатии — например, уменьшались, светились или подпрыгивали. Мы можем запускать CSS-анимации или переходы с помощью JavaScript.
Сначала создайте простую кнопку в вашем HTML:
<button id="animatedButton">Click Me</button>Затем добавьте базовый CSS, чтобы стилизовать кнопку:
#animatedButton {
padding: 10px 20px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
transition: transform 0.2s, background-color 0.2s;
}Теперь добавьте JavaScript для создания анимации клика:
const button = document.getElementById('animatedButton');
button.addEventListener('click', function() {
// Добавьте класс для эффекта клика
button.classList.add('button-clicked');
// Удалите класс после завершения анимации
setTimeout(function() {
button.classList.remove('button-clicked');
}, 200);
});Наконец, добавьте CSS для эффекта анимации:
.button-clicked {
transform: scale(0.95);
background-color: #45a049;
}При нажатии кнопка теперь будет немного уменьшаться и менять цвет, обеспечивая визуальную обратную связь пользователю.
Задание
ЛегкоКогда кнопка нажата, добавьте ей CSS-класс "button-clicked" для визуальной обратной связи.
Добавьте строку, которая применяет этот класс, внутри слушателя события клика.
Попробуйте сами
<!DOCTYPE html>
<html>
<head>
<title>Button Animation Example</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<h1>Interactive Button Demo</h1>
<p>Click the button below to see a smooth animation effect.</p>
</header>
<main class="content">
<button id="animatedButton" class="btn">Click Me</button>
</main>
<script src="script.js"></script>
</body>
</html>
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела JavaScript in Action
1Интерактивность / UI-компоненты
ВкладкиАккордеон (развернуть/свернуть)Модальное окно (открыть/закрыть)Выпадающий список