Показать сообщение отдельно
  #7 (permalink)  
Старый 18.06.2022, 20:03
Аспирант
Отправить личное сообщение для maxg5 Посмотреть профиль Найти все сообщения от maxg5
 
Регистрация: 16.08.2016
Сообщений: 89

рони,
А как сделать что бы этот код работал с localStorage, т.е. как мне нужно.
Я пробовал сделать так, но не получается:
<p>Сегодня на нашем сайте заказов - <span id="zn">32</span></p>
<script>
var date = new Date;
var ll, time;
let nums = [14, 1249, 1327, 1632];// до какого числа анимировать
let secs = [0, 3, 5, 9];//сколько времени будет длится анимация
let pause = [5, 10, 15, 0 ]; //пауза, после которой, запустится следущаяя анимация
const elem = document.querySelector('#zn');
const anim = (i, r) => {
  let d = performance.now(),
  from = +elem.textContent,
  to = nums[i],
  duration = secs[i] * 1000;
  requestAnimationFrame( function e(b) {
  b = (b - d) / duration;
  1 <= b && (b = 1);
  let c = from + (to - from) * b | 0;
   localStorage.setItem(c, c);
  elem.innerHTML = localStorage.getItem(c, c);
  b == 1 && setTimeout(r,pause[i] * 1000);
  1 > b && requestAnimationFrame(e)
})
ll = localStorage.setItem (time , date.getMinutes());
if (localStorage.setItem (time , date.getMinutes()) == ll) {
return true;
} else {
elem.innerHTML = localStorage.getItem(c, c);
}
}
const delay = i => new Promise(r => anim(i, r));

(async () => {
	for (let i = 0; i < secs.length; i++) {
	    await delay(i);
	}
})();
</script>
Ответить с цитированием