我已经使用JavaScript在用户点击弹出通知时设置了一个 cookie,但是在完全关闭浏览器后,cookie 就会过期,并且在导航到该页面时再次显示通知。
我希望用户有选择地可以说“不要再显示这个”。
1)是否有更好的方法来保存数据,比如将数据保存到数据库中?
2)我能否设置 cookie,使其在窗口关闭时不过期?
以下是设置 cookie 的代码。如果 cookie 没有设置为“visited”,则调用另一个函数来 showLightBox()。
我希望用户有选择地可以说“不要再显示这个”。
1)是否有更好的方法来保存数据,比如将数据保存到数据库中?
2)我能否设置 cookie,使其在窗口关闭时不过期?
以下是设置 cookie 的代码。如果 cookie 没有设置为“visited”,则调用另一个函数来 showLightBox()。
$j(document).ready(function() {
$j(function() {
checkCookie();
});
function checkCookie() {
var hasVisit = getCookie("hasVisited");
if(hasVisit != "visited") {
showLightBox();
}
}
function getCookie(c_name) {
var c_value = document.cookie;
var c_start = c_value.indexOf(" " + c_name + "=");
if (c_start == -1)
c_start = c_value.indexOf(c_name + "=");
if (c_start == -1)
c_value = null;
else
{
c_start = c_value.indexOf("=", c_start) + 1;
var c_end = c_value.indexOf(";", c_start);
if (c_end == -1)
c_end = c_value.length;
c_value = unescape(c_value.substring(c_start,c_end));
}
return c_value;
}
function setCookie(cookieName, value) {
document.cookie = cookieName + "=" + value;
}