Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Скрыть или показать элементы до истечения дня (https://javascript.ru/forum/dom-window/79211-skryt-ili-pokazat-ehlementy-do-istecheniya-dnya.html)

galconda 07.01.2020 14:24

Скрыть или показать элементы до истечения дня
 
Нужна помощь в работе с функцией времени.
Не получается сделать так, чтобы после выбора элемента функцией рендом, значения базы данных не менялись при повторной загрузке страницы и элемент $w('#cardsWarning').show(); оставался видимым до истечения дня (23:59:59:00).
Пытался сделать через timeOut и дать просто delay, скажем на 24 часа, но при повторной загрузке страницы опять картинка исчезает.

Вот код сделаный в wix corvid:

// GET RANDOM CARD VALUES FROM COLLECTION

$w.onReady(function () {
	$w('#gameCards').hide();

});

export function startButton_click(event) {
	$w('#CardsIntro').hide();{
    //element is hiden until midnight
  }
  $w('#startButton').hide();{
    //element is hiden until midnight
  }
  $w('#gameCards').show();
	$w('#cardGallery').show();
  setTimeout(function () {
     $w('#pickCard').show()
        }, 1000);
}

export function pickCard_click(event, $w) {
  let database = $w('#cardsDataset').getTotalCount(); 
  let mixon = Math.floor(Math.random() * database); 
  $w('#cardsDataset').setCurrentItemIndex(mixon)
  $w('#cardFrontText').show();
  $w('#cardBackText').show();
  $w('#recommendation').show();
  $w('#explanation').show();
  $w('#cardsWarning').show();
  $w('#pickCard').hide();
  $w('#cardGallery').pause();
}

// RANDOMIZING CARDS

function random(items) {
 var settings = items.length, randomize, index;
 while (0 !== settings) {
    index = Math.floor(Math.random() * settings);
    settings -= 1;
    randomize = items[settings];
    items[settings] = items[index];
    items[settings] = randomize;
  }
 return items;
}

// LOCK Dataset values onPageLeave and onPageEnter until midnight.

/*
var date = new Date();
var midnight = new Date(); 
midnight.setHours(23,59,59,0);
*/
/*var today = new Date(); 
var time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
*/


Часовой пояс GMT +3, время: 13:48.