一次性弹出窗口是如何实现的?
How are one time only popups implemented?
当您 return 访问某些网站时,有时它们会显示弹出窗口或消息,以通知用户网站的新更新或重要更改。
我无法理解这些消息是如何实现的,因为这些消息只出现一次。后端如何知道用户已经看到备份,如果用户看到特定消息,每次页面被 returned 时,它不会费力地检查吗?
我想到了多种实现此功能的方法:
- 存储由后端检查的 cookie,以查看用户是否看到了最近的消息或弹出窗口。
- 在名为 'viewed_message' 的数据库中有一个 table 或表明所有用户是否看到某条消息的东西。
网站如何只创建一次性 popup/messages?谢谢。
通常 cookie 用于这类事情。只需检查一些 firstVisit
cookie 是否存在,如果不存在则弹出消息。请记住,这意味着如果您清除 cookie,您将再次看到弹出窗口。
编辑:
这是 Mozilla 上 Document.cookie 文档中的示例:
function doOnce() {
if (document.cookie.replace(/(?:(?:^|.*;\s*)doSomethingOnlyOnce\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "doSomethingOnlyOnce=true; expires=Fri, 31 Dec 9999 23:59:59 GMT";
}
}
我想你在路上。
Cookie 就是为此而存在的,创建一个永不过期的 cookie 并感到高兴。
如果您想在其他浏览器中使用,如果不查看 table 并存储 cookie,请检查 cookie 是否存在。
当您 return 访问某些网站时,有时它们会显示弹出窗口或消息,以通知用户网站的新更新或重要更改。
我无法理解这些消息是如何实现的,因为这些消息只出现一次。后端如何知道用户已经看到备份,如果用户看到特定消息,每次页面被 returned 时,它不会费力地检查吗?
我想到了多种实现此功能的方法:
- 存储由后端检查的 cookie,以查看用户是否看到了最近的消息或弹出窗口。
- 在名为 'viewed_message' 的数据库中有一个 table 或表明所有用户是否看到某条消息的东西。
网站如何只创建一次性 popup/messages?谢谢。
通常 cookie 用于这类事情。只需检查一些 firstVisit
cookie 是否存在,如果不存在则弹出消息。请记住,这意味着如果您清除 cookie,您将再次看到弹出窗口。
编辑: 这是 Mozilla 上 Document.cookie 文档中的示例:
function doOnce() {
if (document.cookie.replace(/(?:(?:^|.*;\s*)doSomethingOnlyOnce\s*\=\s*([^;]*).*$)|^.*$/, "") !== "true") {
alert("Do something here!");
document.cookie = "doSomethingOnlyOnce=true; expires=Fri, 31 Dec 9999 23:59:59 GMT";
}
}
我想你在路上。
Cookie 就是为此而存在的,创建一个永不过期的 cookie 并感到高兴。 如果您想在其他浏览器中使用,如果不查看 table 并存储 cookie,请检查 cookie 是否存在。