Я работаю над тем, чтобы включить уведомление в стиле GDPR / Cookie для случаев, когда пользователи посещают наш сайт впервые, но не снова, пока они не очистят свой кэш. У меня настроено уведомление, чтобы показать, когда окно открывается, и кнопка закрытия, чтобы закрыть его.
Я пытался использовать localStorage и sessionStorage jquery, аналогичные тем, которые использовались, чтобы помочь другим пользователям, включая сначала скрытие всплывающего окна, а затем проверку в localStorage, чтобы увидеть, есть ли оно:
$(document).ready(function() {
$('#toast').hide();
var element= localStorage.getItem('status');
if (element == null || element == '') {
localStorage.setItem('element', 1);
$('#toast').show();
}});
Но 1) я не хочу копировать макароны, потому что 2) это не работает.
html для всплывающего окна здесь:
<div id="toast" class="toast-close fixed-bottom" style="background-color: #DB7232; color: white; opacity: .7; margin: 0 0 2rem 2rem; padding: 1rem; width: 18rem;">
<small>By continuing to browse this site, you're accepting the use of cookies.</small>
<small><button type="button" data-dismiss="toast" class="close" aria-label="Close">×</button></small>
</div>
jquery, чтобы закрыть всплывающее окно здесь:
$(document).on('click', '.toast-close', function() {
$(this).fadeOut(function(){
$(this).remove();
});
});
Я ожидаю, что когда пользователь заходит на наш сайт впервые (или с тех пор, как мы добавили эту функцию), всплывающее окно появится; как только они выходят из всплывающего окна или из браузера, уведомление больше не будет появляться, пока их кэш не будет очищен.