Изменять информацию раз в сутки

236
10 декабря 2016, 10:17

Нужно на странице, изменять информацию через определенный период времени, например, раз в сутки.

К примеру, есть три div'a, они скрыты через css, нужно каждый день, в 12 часов, делать один из div'ов видимым. на следующий день скрывать текущий div, и показывать другой.

Не знаю, чем такое даже реализовать. Скорее всего на php, т.к. js привязывается к фронту, а тут нужен независимый от перезагрузок страницы таймер

Answer 1

Лучше это делать на JS. Например следующим образом:

//Задаем дату от которой будет веститсь отсчет показов 
var startDate = new Date(2016, 8, 1, 12) 
var div = [] 
div[0] = document.getElementsByClassName('day1')[0] 
div[1] = document.getElementsByClassName('day2')[0] 
div[2] = document.getElementsByClassName('day3')[0] 
 
 
 
function millisecondsToDays(milliseconds) { 
  return Math.floor(milliseconds/1000/60/60/24) 
} 
 
 
function updateVisibility() { 
  //Скрываем все элементы 
  div.forEach(function(item) { 
     item.style.display = 'none'; 
  }) 
  var now = new Date(); 
  //Открываем элемент, который должен быть показан сегодня 
  div[millisecondsToDays(now - startDate) % div.length].style.display = 'block'; 
  //Рассчитываем время до следующего обновления 
  var nextUpdate = Date(now.getFullYear(), now.getMonth(), now.getDate() + 1, 12) 
  //Ставим таймер на следующее обновление 
  setTimeout(updateVisibility, nextUpdate - now) 
} 
updateVisibility();
<div class="day1">1</div> 
<div class="day2">2</div> 
<div class="day3">3</div>

Update: что бы показать все элементы, можно использовать подобную функцию

function showAll() {
  div.forEach(function(item) {
     item.style.display = 'block';
  })
}
READ ALSO
Не получается исключить страницы в woprdpress

Не получается исключить страницы в woprdpress

У меня подгружались похожие записиЯ добавил ещё и страницы

254
Как взять строку из файла?

Как взять строку из файла?

Есть обычный текстовый документ counttxt

290
Построение формы html

Построение формы html

Сделал форму ввода логина и пароля

176
Проблема в Yii2. Undefined index: parent_id

Проблема в Yii2. Undefined index: parent_id

Код перестал работать внезапноЗаранее спасибо

380