Показать сообщение отдельно
  #2 (permalink)  
Старый 01.02.2024, 12:23
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Не проверял, но должно сработать:

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min) + min);
}

const blockList = Array.from(document.querySelectorAll('.fact_block'));
const limitationBlock = document.querySelector('.limitation');

const INTERVAL = 1000 * 60 *  60 * 10; // 10 часов
const STORAGE_KEY = 'random-block';

const currentStorageValue = Number(window.localStorage.getItem(STORAGE_KEY));

if (Number.isNaN(currentStorageValue) || currentStorageValue < Date.now() - INTERVAL) {
  const randomBlockItem = blockList[getRandomInt(0, getRandomInt.length - 1)];
  
  window.localStorage.setItem(STORAGE_KEY, String(Date.now()));
  
  randomBlockItem.classList.add('show');
} else {
  limitationBlock.classList.add('show');
}
Ответить с цитированием