#javascript
#javascript
Вопрос:
var progress = document.querySelector('.progress-done');
setTimeout(() => {
progress.style.width = progress.getAttribute('data-done') '%';
progress.style.opacity = 1;
}, 500)
Я создал индикатор выполнения. Я хочу, чтобы он повторялся с тем же селектором и тем же атрибутом. Как бы я это сделал?
Комментарии:
1.Вам нужно использовать
setInterval
вместоsetTimeout
developer.mozilla.org/en-US/docs/Web/API /… и с тобой покончено.2. Пожалуйста, добавьте весь код, чтобы мы могли его воспроизвести.
Ответ №1:
Решение
Вы должны использовать setIntervall()
вместо setTimeout
.
Разница
Разница между этими двумя заключается в
- setTimeout позволяет нам запускать функцию один раз по истечении заданного интервала времени.
- setInterval позволяет нам запускать функцию повторно, начиная с интервала времени, а затем непрерывно повторять с этим интервалом.
Пример
x — это то, как часто он должен повторяться в миллисекундах
setIntervall(() => {
progress.style.width = progress.getAttribute('data-done') '%';
progress.style.opacity = 1;
}, x);
Дополнительную информацию вы можете найти здесь
Комментарии:
1. Ответы должны быть автономными. Включите соответствующие части ссылки в сам ответ . Ответы только для ссылок менее полезны.
2. хорошо, я обновлю его. Спасибо за совет
Ответ №2:
Измените setTimeout на setInterval
setInterval(() => {
progress.style.width = progress.getAttribute('data-done') '%';
progress.style.opacity = 1;
}, 500)