JS通过Cookie判断页面是否为首次打开


Posted in Javascript onFebruary 05, 2016

废话不多说了,直接给大家贴代码了,本文写的不好还请各位大侠见谅。

JScript code:

function Cookie(key,value)
{
this.key=key;
if(value!=null)
{
this.value=escape(value);
}
this.expiresTime=null;
this.domain=null;
this.path="/";
this.secure=null;
}
Cookie.prototype.setValue=function(value){this.value=escape(value);}
Cookie.prototype.getValue=function(){return (this.value);}
Cookie.prototype.setExpiresTime=function(time){this.expiresTime=time;}
Cookie.prototype.getExpiresTime=function(){return this.expiresTime;}
Cookie.prototype.setDomain=function(domain){this.domain=domain;}
Cookie.prototype.getDomain=function(){return this.domain;}
Cookie.prototype.setPath=function(path){this.path=path;}
Cookie.prototype.getPath=function(){return this.path;}
Cookie.prototype.Write=function(v)
{
if(v!=null)
{
this.setValue(v);
}
var ck=this.key+"="+this.value;
if(this.expiresTime!=null)
{
try
{
ck+=";expires="+this.expiresTime.toUTCString();;
}
catch(err)
{
alert("expiresTime参数错误");
}
}
if(this.domain!=null)
{
ck+=";domain="+this.domain;
}
if(this.path!=null)
{
ck+=";path="+this.path;
}
if(this.secure!=null)
{
ck+=";secure";
}
document.cookie=ck;
}
Cookie.prototype.Read=function()
{
try
{
var cks=document.cookie.split("; ");
var i=0;
for(i=0;i <cks.length;i++)
{
var ck=cks[i];
var fields=ck.split("=");
if(fields[0]==this.key)
{
this.value=fields[1];
return (this.value);
}
}
return null;
}
catch(err)
{
alert("cookie读取错误");
return null;
}
}

HTML code:

<script type="text/javascript" src="Cookie.js"></script>
<script type="text/javascript" language="javascript">
window.onload=function(){
var ck=new Cookie("HasLoaded"); //每个页面的new Cookie名HasLoaded不能相同
if(ck.Read()==null){//未加载过,Cookie内容为空
alert("首次打开页面");
//设置保存时间
var dd = new Date();
dd = new Date(dd.getYear() + 1900, dd.getMonth(), dd.getDate());
dd.setDate(dd.getDate() + 365);
ck.setExpiresTime(dd);
ck.Write("true"); //设置Cookie。只要IE不关闭,Cookie就一直存在
}
else{//Cookie存在,表示页面是被刷新的
alert("页面刷新");
}
}
</script>

以上所述是小编给大家分享JS通过Cookie判断页面是否为首次打开的相关内容,希望对大家有所帮助。

Javascript 相关文章推荐
javascript 时间比较实现代码
Oct 28 Javascript
JS高级拖动技术 setCapture,releaseCapture
Jul 31 Javascript
jQuery实现统计输入文字个数的方法
Mar 11 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
Jun 19 Javascript
Avalon中文长字符截取、关键字符隐藏、自定义过滤器
May 18 Javascript
AngularJS 自定义过滤器详解及实例代码
Sep 14 Javascript
vue2.0结合Element实现select动态控制input禁用实例
May 12 Javascript
原生JS实现图片网格式渐显、渐隐效果
Jun 05 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
Aug 14 Javascript
layui监听工具栏的实例(操作列表按钮)
Sep 10 Javascript
VUE中V-IF条件判断改变元素的样式操作
Aug 09 Javascript
AJAX检测用户名是否存在的方法
Mar 24 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
Feb 05 #Javascript
jquery实现的判断倒计时是否结束代码
Feb 05 #Javascript
AngularJs中route的使用方法和配置
Feb 04 #Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
Feb 04 #Javascript
分享我对JS插件开发的一些感想和心得
Feb 04 #Javascript
关于JavaScript作用域你想知道的一切
Feb 04 #Javascript
Node.js重新刷新session过期时间的方法
Feb 04 #Javascript
You might like
PHP 检查扩展库或函数是否可用的代码
2010/04/06 PHP
PHP5中使用DOM控制XML实现代码
2010/05/07 PHP
PHP字符串比较函数strcmp()和strcasecmp()使用总结
2014/11/19 PHP
php关联数组快速排序的方法
2015/04/17 PHP
PHP概率计算函数汇总
2015/09/13 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
PHP邮件群发机实现代码
2016/02/16 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
PHP中md5()函数的用法讲解
2019/03/30 PHP
详解phpstorm2020最新破解方法
2020/09/17 PHP
js验证是否为数字的总结
2013/04/14 Javascript
js验证IP及子网掩码的合法性有效性示例
2014/04/30 Javascript
node.js中的fs.writeFileSync方法使用说明
2014/12/14 Javascript
js获取滚动距离的方法
2015/05/30 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
vue+axios实现登录拦截的实例代码
2017/05/22 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS VG
2014/05/25 DOTA
关于Django外键赋值问题详解
2017/08/13 Python
pandas 小数位数 精度的处理方法
2018/06/09 Python
Sanic框架应用部署方法详解
2018/07/18 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
python爬虫 2019中国好声音评论爬取过程解析
2019/08/26 Python
Django更新models数据库结构步骤
2020/04/01 Python
Python opencv相机标定实现原理及步骤详解
2020/04/09 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
使用Python将xmind脑图转成excel用例的实现代码(一)
2020/10/12 Python
Amara美国站:英国高端家居礼品网站,世界各地的奢侈家具品牌
2017/07/26 全球购物
如果一个类实现了多个接口但是这些接口有相同的方法名将会怎样
2013/06/16 面试题
校园联欢晚会主持词
2014/03/17 职场文书
工厂仓管员岗位职责范本
2014/07/17 职场文书
品牌转让协议书
2014/08/20 职场文书
少先队活动总结
2014/08/29 职场文书
忠诚奉献演讲稿
2014/09/12 职场文书
中学生打架检讨书之500字
2019/08/06 职场文书