我有这个弹出代码,一旦用户关闭浏览器窗口就会激活。问题是我在我的网站上有图片所以每次冲浪者点击图片时,就好像他被带离网站并弹出窗口。
我想让这个弹出窗口每个浏览器会话只显示一次。
var sync = true;
window.onbeforeunload = doSync;
function doSync() {
if (sync == true) {
window.open('myurl', '_blank');
}
else {
return;
}
}
那么......我应该用什么代码来制作每个浏览器一次的会话cookie?
提前致谢!
答案 0 :(得分:1)
Cookie用于存储您希望每次 REQUEST 发送到服务器的数据,因此根本不使用Cookie,请使用sessionStorage
var sync = true;
window.onbeforeunload = doSync;
function doSync() {
if (sync && !window.sessionStorage.getItem('popupShown')) {
window.sessionStorage.setItem('popupShown', 1);
window.open('myurl', '_blank');
}
}
其中 popupShown 是 sessionStorage 中的标志,指明它之前发生过。