不知道能不能解决你的问题,但是我来说说我的经历,昨天在用Yii做项目是删除js 的cookie是遇到了问题在一个页面生成的cookie时只能
在同一个页面删掉,在另一个页面死活删不掉,凭着哥执着的性格,哥折腾到12点,结果还是没解决,坑爹啊!!后来我看到下面这篇文章
后http://www.cnblogs.com/gossip/archive/2011/12/06/2278282.html,才知道原来是cookie路径的问题,然后通过火狐自带的查看
cookie功能<选项-----隐私------删除个人cookie------在搜索框中输入cookie的名字,在下方你可以看到路径>查看到无法删掉的那个
cookie文件的路径,然后在删除cookie时将cookie的路径加了进去果然删除掉了。
但是,正当我沾沾自喜时,准备换个浏览器试下,坑姐夫呢!这是!!!,360极速浏览器怎么还是删不掉cookie,蛋疼啊!最后通过360极
速浏览器自带的查看cookie功能<选项-----高级设置------网页内容-----内容设置------cookie---所有cookie和网页数据------输入你
的域名(我的是localhost),你就可以看到你的cookie了>发现他设置的cookie路径和火狐不同,最后改了改删除cookie的函数,终于两个浏
览器都可以删除了,噩梦终于结束了。附上我删除cookie的函数最终版!虽然不太严谨 function deleteMyCookie2(name) {
var date = new Date();
date.setTime(date.getTime()-10000); //删除一个cookie,就是将其过期时间设定为一个过去的时间
document.cookie = name + "= ' ' " + "; expires=" + date.toUTCString()+";path="+"火狐上显示的cookie路径";
document.cookie = name + "= ' ' " + "; expires=" + date.toUTCString()+";path="+"ie和360上显示的cookie路径";
}
这个函数之所以可以成功解决ie、360极速、火狐的兼容,是因为蓝色字体的每一句对不同的浏览器来说都是正确的,且由于路径不同的
cookie尽管名字相同但是不会相互覆盖,所以刚好解决了兼容问题。
https://blog.csdn.net/huanshiwushuang/article/details/70172536