#javascript #cookies
#javascript #файлы cookie
Вопрос:
HTML-ссылки:
<a href="javascript:del_cookie(name);">Logout</a>
<a href="javascript:delete_cookie(rememberKeepMeLoggedIn);">Logout</a>
<a href="javascript:eraseCookie(name);">Logout</a>
<a href="#" onclick="del_cookie(name);">Logout</a>
<a href="#" onclick="delete_cookie(rememberKeepMeLoggedIn);">Logout</a>
<a href="#" onclick="eraseCookie(name);">Logout</a>
Javascript:
функция delete_cookie(rememberKeepMeLoggedIn) {
переменная cookie_date = новая дата ( );
cookie_date.setTime ( cookie_date.getTime() — 1 );
document.cookie = rememberKeepMeLoggedIn = «=; expires=» cookie_date.toGMTString();
}функция del_cookie(имя) { document.cookie = ‘acceptsCookies=; expires=Чт, 01 января 1970 00:00:00 GMT;’;
окно.местоположение = «http://www.smugmug.com/logout.mg?goTo =#«
}функция eraseCookie(name) { var cookies = document.cookie.split(«;»);
для (var i = 0; i < cookie-файлы.длина; i )
Удаляет cookies(cookies[i].разделить(«=»)[0]);
}
Как я могу удалить или сбросить cookie-файлы с именем « UP-759283
«?
Хорошо ли выглядит приведенный ниже синтаксис?
Вот моя функция javascript:
функция del_cookie() {
document.cookie = UP-759283 ‘=; истекает =чт, 01 января-70 00:00:01 GMT;’;
}
Выноска URL-адреса HTML
<a href="javascript:del_cookie(); document.location.reload( );">Logout</a>
Ответ №1:
Хорошо ли выглядит приведенный ниже синтаксис?
Нет; просто запустите свой код через JSLint, и вы увидите. Изменить
document.cookie = UP-759283 '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
Для
document.cookie = 'UP-759283=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
Согласно документам document.cookie
MDC, cookie-файлы удаляются путем установки времени истечения срока действия равным нулю:
document.cookie = 'UP-759283=; expires=Thu, 01 Jan 1970 00:00:00 GMT;';
Другая ссылка: cookies @ quirksmode
.
Комментарии:
1. бесполезная конкатенация строк бесполезна. Также что, если локальное машинное время установлено на 1965?
2. @Raynos: установите машинное время на 1965 и попробуйте сами . В Windows 7 я не могу установить системные часы раньше, чем 1 января 1980 года.
3. @MattBall Я должен узнать, как работают cookie-файлы >_>. Я предполагаю, что ваш ответ все же сработает. В любом случае, если вы установите системные часы на 1965, сломается очень много кода.
4. Пока не повезло, ребята… есть другие предложения?
5. @detonate: в чем проблема? Вы видели демо-версию? jsfiddle.net/mattball/mJLZj