РЕДАКТИРОВАТЬ: У меня возникла проблема с файлом cookie ниже, поэтому я переключился на jQuery Cookie, но ошибка все еще сохраняется, поэтому я разместил здесь код jQuery Cookie, но оставил свой оригинальный вопрос нетронутый:
На одной странице я вызываю colorbox, и этот код работает должным образом, но на другой странице я изменил имя cookie и вызываемую функцию, и она выходит из строя, вот этот код:
var $j = jQuery.noConflict();
$j(window).load(function() {
//I have also tried - $j(document).ready(function(){ -
///to see if that changed anything
if(!$j.cookie('homecookie')){
$j("#start").click();
//the click functions clicks a hidden link witch triggers a fancybox
//lightbox to load - works properly in all but IE (have tested 8) in which
//the lightbox continues to load regardless of the cookie
$j.cookie("homecookie", 1, {expires: 30, path: '/'});
}
});
Как мне заставить это работать в IE 8+ - при загрузке страницы не выдается никаких ошибок. Вот ссылка на страницу:
Эта страница Должна активировать Fancybox только при первом посещении
Примечание. Я протестировал указанный выше файл cookie / скрипт в FF, Chrome, Safari и Opera, и все работает нормально.
-------- Оригинальный вопрос --------
Я использую следующий файл 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;path=/;expires=" + expires.toUTCString();
$j.colorbox({ inline:true, href:"#gallery-nav-instruct"});
}
});
Работает в FF и Chrome, но не в IE 8.
Cookies разрешены в настройках.
Есть пара проблем: на одной странице IE не запускает скрипт (Colorbox), на другой странице cookie не пересматривается, и скрипт продолжает вызываться. Только изменение в двух скриптах - это изменение $j.colorbox({ inline:true, href:"#gallery-nav-instruct"});
на $j("#start").click();