romagromov

ответов0 / помог0

Запомнить закрытие дива через куки?

1680018646
Здравствуйте! Есть простой код, для отображения рекламного блока с кнопкой его закрытия. Разумеется после перезагрузки страницы блок снова отображается. Как запомнить действия пользователя, например на сутки? Сам код:

<div class="topads"><i class="fas fa-volume-up"></i>Текст внутри блока</div>
<div id="clickme">
  <i class="fas fa-times-circle"></i>
</div>
<script>
$( "#clickme" ).click(function() {
  $( "#g-header" ). slideToggle( "fast", function() {
    // Animation complete.
  });
});
</script>
Splalsto
ответов1 / помог1
1680018849
по такому наброску не понятно. задать переменную, если она, скажем, true - блок скрывать. записывать значение в localstorage, проверять при рендере. З.Ы.: вообще не про верстку вопрос
romagromovвлепить жирный лайк
liris
ответов6 / помог6
1680018931
Работа с куками: https://learn.javascript.ru/cookie Как вариант - при закрытии блока ставите куку, у которой expires (срок действия) - сутки. Перед отображением блока делаете проверку - если нет куки, тогда отображаете блок.
romagromovвлепить жирный лайк
xkkx
ответов2 / помог2
1680019052

let saveTimeBanner = localStorage.getItem('saveTimeBanner');
if ((saveTimeBanner === null) || (+new Date() - saveTimeBanner > (24 * 3600 * 1000))) {
    localStorage.setItem('saveTimeBanner', +new Date());
    $('#block').show();
} else {
    $('#block').hide();
}
romagromovвлепить жирный лайк
romagromov
ответов0 / помог0
1680019199
xkkx, я так понял этот код добавить к моему выше?
влепить жирный лайк
xkkx
ответов2 / помог2
1680019285
romagromov, Да. По умолчанию на странице block сделать hidden
romagromovвлепить жирный лайк
Сначала вход
A B i U S JS PHP HTML CSS SQL C C++ C# PYTHON JAVA
Для входа только имэйл или имя и апроль
Можно сменить аватар
Имэйл Ваше имя
Пароль