Как установить переменную session в jquery?
У меня есть html-страница, которая открывает всплывающее окно при загрузке страницы.
Мне нужно установить всплывающее окно только при первой открытии страницы. Я думаю, что сеанс или файл cookie должны быть установлены.
<script>
!window.jQuery && document.write('<script src="fancybox/jquery-1.4.3.min.js"><\/script>');
</script>
<script type="text/javascript" src="fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("a#example1").fancybox();
$("a#example1").trigger('click');
});
</script>
<link rel="stylesheet" type="text/css" href="fancybox/jquery.fancybox-1.3.4.css" media="screen" />
</head>
<body>
<a id="example1" href="images/pic.jpg"></a>
</body>
Ответы
Ответ 1
Используйте localStorage, чтобы сохранить тот факт, что вы открыли страницу:
$(document).ready(function() {
var yetVisited = localStorage['visited'];
if (!yetVisited) {
// open popup
localStorage['visited'] = "yes";
}
});
Ответ 2
Вы можете попробовать использовать sessionStorage HTML5, который длится в течение сеанса страницы. Сеанс страницы длится до тех пор, пока браузер открыт и выживет через перезагрузку и восстановление. Открытие страницы в новой вкладке или окне приведет к запуску нового сеанса.
sessionStorage.setItem( "имя пользователя", "Джон" );
https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage#sessionStorage
Совместимость браузера https://code.google.com/p/sessionstorage/ совместима с каждым браузером A-класса, включая iPhone или Android. http://www.nczonline.net/blog/2009/07/21/introduction-to-sessionstorage/