代理加盟

2023全新代理计划,一站式模板建站,铜牌代理低至699元送终身VIP,独立代理后台,自营贴牌。

您现在的位置: 麦站网 > 站长学院 > 建站教程 >

jquery中的cookie插件

来源:本站原创 发布时间:2020-12-18 22:32:54热度:616 ℃我要评论(0

麦站模板建站平台(10年经验),服务数万家企业,固定透明报价。域名注册、主机/服务器、网站源码一站式服务。实体公司,专业团队,值得选择!超过1000套模板已登记版权,合规合法建站,规避版权风险!【点击获取方案】

Cookie 是由 Web 服务器保存在用户浏览器上的小文本文件,它包含有关用户的本地终端上的数据。

jQuery提供了一个十分简单的插件(名称也是Cookie)来管理网站的Cookie。

下载地址:http://github.com/carhartl/jquery-cookie

例子: 当在用户名字段填写用户名后,单击下面的“记住用户名”复选框后,再次打开这个页面,发现用户名字段上已经被自动赋值(之前所填写的用户名)

01<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
03<head>
04<title></title>
05<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
06<script src="../../scripts/jquery.js" type="text/javascript"></script>
07<script src="js/jquery.cookie.js" type="text/javascript"></script>
08<script type="text/javascript">
09    $(function() {
10        var COOKIE_NAME = 'username';
11        if( $.cookie(COOKIE_NAME) ){
12            $("#username").val(  $.cookie(COOKIE_NAME) );
13        }
14        $("#check").click(function(){
15            if(this.checked){
16                $.cookie(COOKIE_NAME, $("#username").val() , { path: '/', expires: 10 });
17            }else{
18                $.cookie(COOKIE_NAME, null, { path: '/' });
19            }
20        });
21     
22    });
23 
24</script>
25</head>
26<body>
27   用户名:<input type="text" name="username" id="username" /> <br/>
28   <input type="checkbox" name="check" id="check"/>记住用户名
29</body>
30</html>

 

jquery中的cookie插件

 

调试:

使用chrome调试,发现无法实现效果

尝试获取cookie文件也失效

image

原因:

chrome不支持js在本地操作cookie。据测试,除了chrome浏览器外,其他主流浏览器(ie、firefox等)都支持js在本地操作cookie。当然部署到服务器上所有浏览器都是支持的。

扩展:

操作cookie失效还有一个原因:浏览器设置成不支持Cookie。
可以通过以下代码测试浏览器是否支持Cookie或者Cookie是否被禁用?

01var dt = new Date();
02dt.setSeconds(dt.getSeconds() + 60);
03document.cookie = "cookietest=1; expires=" + dt.toGMTString();
04var cookiesEnabled = document.cookie.indexOf("cookietest=") != -1;
05if(!cookiesEnabled) {
06    //没有启用cookie
07    alert("没有启用cookie ");
08} else{
09    //已经启用cookie
10    alert("已经启用cookie ");
11}

经测试,chrome的确没有启用Cookie,因此上述例子达不到效果

    转载请注明来源网址:https://www.xiuzhanwang.com/news/2833.html

    发表评论

    评论列表(0条)

       
      QQ在线咨询
      VIP限时特惠