Встречается на собеседованиях • сегодня
Как делать анимацию progress bar от 0 до 10 секунд через JavaScript
Для анимации progress bar можно использовать requestAnimationFrame или CSS transitions с изменением ширины через JS. Вот простой пример:
javascript
const progressBar = document.querySelector('.progress-bar');
let startTime = null;
function animateProgress(timestamp) {
if (!startTime) startTime = timestamp;
const elapsed = timestamp - startTime;
const progress = Math.min(elapsed / 10000, 1); // 10 секунд = 10000ms
progressBar.style.width = `${progress * 100}%`;
if (progress < 1) {
requestAnimationFrame(animateProgress);
}
}
requestAnimationFrame(animateProgress);
text
CSS для прогресс-бара:
```css
.progress-bar {
height: 20px;
background: #4caf50;
width: 0%;
transition: width 0.1s linear; /* Плавность анимации */
}Альтернатива - CSS-анимация:
css
@keyframes progress {
0% { width: 0%; }
100% { width: 100%; }
}
.progress-bar {
animation: progress 10s linear forwards;
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы