2014-11-16 4 views
2

На моем сайте WordPress у меня есть панель уведомлений наверху, которая отображается на незарегистрированных пользователей. Когда пользователь нажимает кнопку закрытия, div-уведомление просто скрывается с display: none;.Спрячьте div, если пользователь нажимает кнопку закрытия

Проблема в том, что всякий раз, когда пользователь обновляет страницу или переходит на другую страницу, она снова появляется.

Мой вопрос: какой лучший способ сохранить эту панель всегда скрытой, как только пользователь нажимает кнопку закрытия? Какова хорошая практика в этом сценарии?

ответ

5

Одним из возможных решений является использование local storage:

HTML

<div>test</div> 
<input type="button" value="hide" /> 

JS

$(":button").on("click", function(){  
    $("div").toggle(); 
    localStorage.setItem("hide", $("div").is(":visible")); 
}); 

localStorage.hide == "false" ? $("div").hide() : $("div").show(); 

fiddle

+0

Это инте отдых. Как работает локальное хранилище? Где хранится информация? Как долго? Насколько совместимо это с браузерами и мобильными браузерами? –

+0

если вы нажмете ссылку - это полное руководство :) –

+0

И еще одна интересная статья [DOM Storage] (http://ejohn.org/blog/dom-storage/) –

Смежные вопросы