1只有首次登陆并且有未读信息时才会出现弹窗。 2从每条进入到详情页再返回到首页弹窗依旧存在。 3关掉弹窗再刷新弹窗不出现。 解决方案 1未登录的时:cookie中没有userid和unit_token两个参数登陆上之后就有了,退出会清除。 登录时:cookie中多出的参数有token(暂时不知道什么意思) var symbol = Cookies.get(‘symbol’) ? Cookies.get(‘symbol’) : 0; symbol(用来判断处于什么状态,首次登录是没有的,然后我们给他赋值为0;当我们判断完是否展示弹窗之后Cookies.set(‘symbol’, 1)在cookies中设置值。);pushListLength是请求的推送数据条数(作用未知);pushStatus是后台加的判断是否显示智能推送这个功能(本地和测试环境返回0,生产环境返回1) 2弹窗出现重要判断依据:
if (unit_token && symbol == 0 && Cookies.get('pushListLength') > 0 || symbol == 2) { $(".intelligentPush").show(); }; function accumulate() { Cookies.set('symbol', 2) };(第一种情况只有unit_token存在并且symbol为0并且推送列表有数据,第二种情况列表数据跳转到详情页将symbol设置为2,再返回到首页的时候)
代码写法技巧1 cookies。Cookies.remove(‘symbol’) Cookies.get(‘symbol’) 2 var box = document.getElementById(“recomend”); box.style.cssText = “color:#C4011A;position:relative;”