Обнаружение изменения домена для удаления cookie - PullRequest
0 голосов
/ 26 августа 2010

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

По сути, я хочу установить cookie-файл и удалить его, если они покидают домен или фиксируют то, что происходит в строке URL-адреса, и я понимаю, что это может быть невозможно по соображениям безопасности / конфиденциальности, но хотелпроверьте, есть ли у какого-нибудь гения где-то здесь идея для взлома.Это моя ближайшая неудачная попытка полного решения:

function del_cookie() {
    var baseUrl= 'mydomain.com';

    var currUrl = document.location.href;                                                                            

    var splitUrl = currUrl.split('/');                                                                               

    var currBaseUrl = splitUrl[2];                                                                                   

    if(currBaseUrl != baseUrl) {                                                                                     
    document.cookie = "animation=;path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT";                                     
    }               
} 

<body onunload="del_cookie()">

Естественно, что currUrl не обновился до нового URL на этом этапе, поэтому это не будет работать.

КажетсяЛучшее решение, которое у меня может быть, - это управлять анимацией только по щелчкам и изменениям внутри DOM и не касаться адресной строки.Но есть ли у кого-нибудь еще идеи?

Ответы [ 3 ]

0 голосов
/ 26 августа 2010

Если я вас понимаю, вы хотите, чтобы заставка отображалась в любой точке входа на сайт, а не только на домашней странице (например.)(так в оригинале).Если он пустой или является доменом, отличным от домена текущего сайта, весьма вероятно, что это первый визит [для этого сеанса.]

-Oisin

0 голосов
/ 29 августа 2010

Похоже, в конце концов, это было невозможно. Ответил здесь ради потомков.

0 голосов
/ 26 августа 2010

Просто чтобы добавить к этому вопросу (также работает над этой же проблемой).

Обычно, когда вы находитесь на mydomain.com и заходите на страницу mydomain.com/page, del_cookie знает, что он все еще находится на mydomain.com, поэтому cookie не удалялся. но когда вы нажимаете на закладку Yahoo или вводите yahoo.com, currUrl все еще думает, что вы все еще находитесь на mydomain.com. Есть ли способ получить предстоящий / для загрузки URL-адрес?

Вот поток, который хотел пользователь: 1: открыть одно новое окно браузера 2: перейти на mydomain.com 3: см. Экран загрузки. 4: если вы нажмете ссылку на mydomain.com, она НЕ перезагрузит экран анимации и загрузки.
5: Тогда, скажем, я иду на www.digg.com или www.gizmodo.com 6: оставить gizmodo.com 7: решите вернуться на mydomain.com 8: мы ДОЛЖНЫ снова увидеть заставку.

"заставка" - это div, который отображается, когда javascript обнаруживает, что cookie не установлен. он загружает анимацию страницы-заставки и устанавливает сессионный cookie.

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