JavaScript 实现 Cookie 控制弹窗显示
作者:纸飞机时间:2026-10-29 22:20:23浏览:155
本文介绍利用 JavaScript 操作 Cookie 实现网页弹窗仅显示一次的功能。通过封装 setCookie 方法,设置过期时间控制提示框的显示逻辑,对比了 Cookie 与 H5 LocalStorage 等主流存储方式,适用于数据量不大的场景。
浏览器本地存储方案对比
在网页开发中,常需利用浏览器本地存储数据。当前主流存储方案包括 Cookie、直接读取 XML、userData 以及 HTML5 的 LocalStorage 等。尽管 Cookie 的存储容量有限,但在处理数据量较小的场景时,其操作依然便捷高效。
Cookie 控制弹窗显示逻辑
以下示例演示了如何在网页加载时弹出提示框,并通过 Cookie 控制使其仅在首次访问时显示,后续刷新不再重复弹出。通过灵活设置 Cookie 的过期时间,可以精确控制提示框的显示策略。
Cookie 封装与调用实现
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
var cookie = {
setCookie:function(name,value,iDay){
var cookieStr = '';
if(iDay == undefined){
cookieStr += name+'='+value+';';
}else{
var oDate = new Date();
oDate.setDate(oDate.getDate()+iDay);
cookieStr += name+'='+value+';express='+oDate;
}
document.cookie = cookieStr;
},
getCookie:function(name){
var arr = document.cookie.split(';');
for(var i=0;i<arr.length;i++){
var arr2 = arr[i].split('=');
if(arr2[0] == name){
return arr2[1];
}
}
return '';
},
removeCookie:function(name){
this.setCookie(name,'1',-1);
}
}
function ControlAlert(){
var flag = cookie.getCookie('flag');
if(!flag){
alert("我是第一次加载的哟!");
cookie.setCookie('flag',true);
//cookie.setCookie('flag',true,1);//如果有第三个参数则保存cookie的天数,如果不设置,浏览器关闭时cookie过期
}
}
(function(){
ControlAlert();
}());
</script>
</body>
</html>
总结
上述内容涵盖了基于 Cookie 的相关操作,旨在为读者提供实用的前端存储应用参考。
作者最新文章
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
