Одно печенье - несколько страниц - PullRequest
6 голосов
/ 13 ноября 2011

Я использую следующий файл cookie:

var $j = jQuery.noConflict();

$j(document).ready(function(){

   if (document.cookie.indexOf('visited=true') == -1) 
   {
      var thirtyDays = 1000*60*60*24*30;
      var expires = new Date((new Date()).valueOf() + thirtyDays);
      document.cookie = "visited=true;expires=" + expires.toUTCString();
      $j.colorbox({ inline:true, href:"#gallery-nav-instruct"});
   }

});

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

Пара замечаний:

Галерея помещена в шаблон Dreamweaver, а файл cookie находится внутри этого шаблона. Я не могу переместить файл cookie за пределы шаблона по нескольким причинам.

Также я использую размещенную CMS, и у меня НЕ есть доступ на стороне сервера, поэтому это должно быть сделано с использованием javascript.

Ответы [ 2 ]

21 голосов
/ 13 ноября 2011

Добавьте ;path=/, чтобы превратить ваш файл cookie в файл cookie сайта. См. Эту статью на JavaScript Cookies для более подробной информации.

0 голосов
/ 07 октября 2014
document.cookie = valuename + "=" + value + "; " + expires + ";domain=;path=/";

Этот "domain=;path=/"; будет принимать динамический домен, поскольку его cookie будет работать в поддомене. Это будет работать, если вы хотите проверить в localhost.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...