Ви повинні визначити шлях, на якому існує файл cookie, щоб переконатися, що ви видаляєте правильний файл cookie.
function set_cookie(name, value) {
document.cookie = name +'='+ value +'; Path=/;';
}
function delete_cookie(name) {
document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
Якщо не вказати шлях, браузер встановить файл cookie щодо сторінки, на якій ви зараз перебуваєте, тому якщо ви видалите файл cookie, перебуваючи на іншій сторінці, інший файл cookie продовжує своє існування.
Редагувати на основі коментаря @Evan Morrison
Майте на увазі, що в деяких випадках для ідентифікації правильного файлу cookie необхідний Domainпараметр.
Зазвичай він визначається як Domain=.yourdomain.com.
Розміщення крапки перед вашим доменним іменем означає, що цей файл cookie може існувати на будь-якому субдомені ( wwwтакож вважається субдоменом).
Також, як зазначено у відповіді @ RobertT, HttpOnlyфайли cookie не можуть бути видалені за допомогою JavaScript на стороні клієнта.
name? У чому сенс цього? Або це похмілля з більш універсальної версії, яка дозволяє вказати ім’я файлу cookie?