记一次js操作cookie的坑!
3 月,跳不动了?>>> 需求:在网站首页加了一个广告模态框,要求每天第一次访问时弹出,此后当天不再弹。 网站上线的当天晚上,大BOSS临时加的一个小需求,当时感觉没什么困难的,几分钟的事情,模态框和cookie操作都是封装好的工具方法,只要将广告图片加上,再存个弹出标识cookie,设置过期时间24小时就ok。然而,实际操作起来,效果却不理想。 我们项目用的是angularjs 1.3的框架,说这个问题之前,不得不提我做登录功能时,遇到的另一个cookie问题。当时操作cookie用的是$cookieStore。但是他好像不兼容IE8,当时用他来做登录功能时,发现页面不能跳转,一跳转页面cookie就会消失,在本页面即使刷新也能读取到cookie。 首先百度查了又查,有的说是IE8设置问题,有的说是用法问题,有的说是兼容问题,反正我都试了,最终只能归咎于兼容问题。同时可以肯定的,这应该是和cookie的作用域或是路径有关系,但是我又没法查看IE8下面cookie的详细信息,而$cookieStore又无法手动设置作用域和路径。这时,我想起以前用过用js封装过cookie工具方法,确定是可以兼容IE8的。于是我就直接拿过来用了,最后测试IE8,果然问题没了。此外我还多测了一下,利用js的方法,我不设置作用域,问题任然存在。 再次回到本问题,此次我用的仍是前面的用到的js方法