2016-01-28 3 views
0

я говорил this thread, чтобы получить прозрачный DIV для отображения на верхней части содержания веб-сайта и сделать его исчезают при нажатии на него ...наложения прозрачной ДИВ один раз нажмите

однако, когда кто-то посещает страницу сайт, и они нажимают на кнопку «домой», они снова отображаются прозрачным div ... Есть ли способ, чтобы div отображался только один раз и больше не появлялся после их закрытия?

+5

[Cookies] (https://stackoverflow.com/questions/4825683/how-do-i-create-and-read-a-value-from-cookie) или [localStorage] (https: // stackoverflow.com/questions/2010892/storing-objects-in-html5-localstorage) – Hatchet

ответ

0

Лучший способ сделать это, установив cookie. На этом пути вы можете скрыть его навсегда или скрыть его в течение определенного времени.

document.cookie = "transparentdivShow = false"; 

И теперь вы можете проверить, если это печенье существует, и если да, то не показывать DIV:

if(document.cookie.indexOf("transparentDivShow") >= 0) { 
    return true; // Don't show it 
} else { 
    return false; // Show the div 
} 
+0

Я никогда не устанавливал файл cookie раньше ... мой идентификатор div #overlay ... как бы реализовать код примера, который вы предоставили? document.cookie = "#overlayShow = false"; if (document.cookie.indexOf ("# overlayShow")> = 0) { return true; // Не показывать это } else { return false; // Показать div } – Cherubrock74

0

Как уже упоминалось выше плаката, вы можете использовать печенье. Кроме того, вы можете использовать локальное хранилище HTML5! Локальное хранилище позволяет хранить данные локально в браузере пользователя.

В этом случае у вас может быть что-то вроде клика, который подсчитывает, будет ли кликчер больше 1. Если он больше 1, дайте div скрытый атрибут или просто избавитесь от него.

if (sessionStorage.clickcounter) { 
<div hidden> You can't see me. I'm invisible. </div> 
} else { 
sessionStorage.clickcounter = 1; 
<div visible> Hi! I'm not transparent. </div> 
} 

Я надеюсь, что это поможет. Вот страница с дополнительной информацией об этом! http://www.w3schools.com/html/html5_webstorage.asp

+0

Большое вам спасибо за ваши ответы! вы думаете, что я могу использовать оба файла cookie и html5? в случае, если у кого-то есть файлы cookie, отключенные html5 все равно выполнили бы работу ... – Cherubrock74

+0

Возможно, вы имеете в виду, если вы можете использовать локальное хранилище в качестве резервной копии, если файлы cookie не включены. В таком случае да, вы можете. Причина, по которой я предпочитаю файлы cookie над локальным хранилищем, заключается в том, что cookie может иметь дату истечения срока действия, поэтому вы можете сделать сообщение повторно отображаться через определенное время. –

+0

Это правда. Время истечения срока действия файла cookie может быть очень полезным, Джаспер прав. JavaScript упрощает настройку и чтение файлов cookie, поэтому это должно быть проблемой. http://www.w3schools.com/js/js_cookies.asp И да, вы можете использовать как html5, так и файлы cookie с html5 в качестве резервной копии. Все будет хорошо. – crepuscularCoder

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