3 回答

TA貢獻1797條經驗 獲得超4個贊
從表面上看,它看起來還不錯-如果您調用eraseCookie()從中讀取的每個cookie document.cookie,那么所有cookie都將消失。
嘗試這個:
var cookies = document.cookie.split(";");
for (var i = 0; i < cookies.length; i++)
eraseCookie(cookies[i].split("=")[0]);
所有這些都帶有以下警告:
JavaScript 無法刪除設置了HttpOnly標志的cookie 。

TA貢獻1848條經驗 獲得超2個贊
沒有刪除瀏覽器Cookie的100%解決方案。
問題在于,cookie不僅通過其鍵“名稱”而且還通過其“域”和“路徑”來唯一標識。
如果不知道Cookie的“域”和“路徑”,就無法可靠地刪除它。無法通過JavaScript的獲得此信息document.cookie。也無法通過HTTP Cookie標頭使用!
但是,如果您知道Cookie的名稱,路徑和域,則可以通過設置一個具有過期日期的空Cookie來清除它,例如:
function clearCookie(name, domain, path){
var domain = domain || document.domain;
var path = path || "/";
document.cookie = name + "=; expires=" + +new Date + "; domain=" + domain + "; path=" + path;
};
添加回答
舉報