将 cookie 设置为每个会话仅显示 div 一次
Set cookie to show div only once per session
我有一个 div,在索引页之前显示一条欢迎消息,我希望 div 每个会话只出现一次。
如何设置 cookie 以仅显示 div 一次?
我以前从来没有为这样的事情使用过 cookie,通常我会使用本地存储,但这个网站经常被旧浏览器访问,这是一个问题。
您可以查看 document.cookie
的文档,更具体地说是示例 3:
if (document.cookie.replace(/(?:(?:^|.*;\s*)someCookieName\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "someCookieName=true; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=/";
}
在此示例中,cookie 是使用 expires
标志创建的,这意味着它将持久存在并在浏览器重新启动后继续存在。如果您只想在每个浏览器会话中执行一次操作,只需在设置 cookie 时删除 expires
标志:
if (document.cookie.replace(/(?:(?:^|.*;\s*)someCookieName\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "someCookieName=true; path=/";
}
我有一个 div,在索引页之前显示一条欢迎消息,我希望 div 每个会话只出现一次。
如何设置 cookie 以仅显示 div 一次?
我以前从来没有为这样的事情使用过 cookie,通常我会使用本地存储,但这个网站经常被旧浏览器访问,这是一个问题。
您可以查看 document.cookie
的文档,更具体地说是示例 3:
if (document.cookie.replace(/(?:(?:^|.*;\s*)someCookieName\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "someCookieName=true; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=/";
}
在此示例中,cookie 是使用 expires
标志创建的,这意味着它将持久存在并在浏览器重新启动后继续存在。如果您只想在每个浏览器会话中执行一次操作,只需在设置 cookie 时删除 expires
标志:
if (document.cookie.replace(/(?:(?:^|.*;\s*)someCookieName\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "someCookieName=true; path=/";
}