有关Jquery操作Cookie取值错误的消除方法,jquery中cookie用法实例详解

正文实例汇报了jquery中cookie用法。分享给我们供我们参考,具体如下:

jquery中cookie用法实例详解(获取,存款和储蓄,删除等),jquerycookie

本文实例叙述了jquery中cookie用法。分享给我们供大家参照他事他说加以考察,具体如下:

cookie在jquery中有钦赐的cookie操作类,上边作者先来介绍大家在使用cookie操作类时的有些标题,然后介绍正确的应用办法。

运用JQuery操作cookie时 产生取的值不得法的难题:
结果开掘cookie有多少个不等的品质:
名称,内容,域,路径

$.cookie('the_cookie'); // 读取 cookie 
$.cookie('the_cookie', 'the_value'); // 存储 cookie 
$.cookie('the_cookie', 'the_value', { expires: 7 }); // 存储一个带7天期限的 cookie 
$.cookie('the_cookie', '', { expires: -1 }); // 删除 cookie

使用:
澳门葡京,复制代码
代码如下:$.cookie(“currentMenuID”, menuID);
时 未钦定域和路线。

负有当域和渠道分裂不时间会发生分化的cookie
复制代码
代码如下:$.cookie(“currentMenuID”);
取值时会产生难题。

故:
复制代码
代码如下:$.cookie(“currentMenuID”, “menuID”, { path: “/”});
开始展览覆盖。同域下同二个cookieID对应三个值。

上面大家来看个实例

有关cookie的path设置要求注意,若是不安装path:’/’的话,path则会依据目录自动安装[如:
‘/user’]

$.extend({ 
/** 
 1. 设置cookie的值,把name变量的值设为value  
example $.cookie('name', ‘value'); 
 2.新建一个cookie 包括有效期 路径 域名等 
example $.cookie('name', ‘value', {expires: 7, path: ‘/', domain: ‘jquery.com', secure: true}); 
3.新建cookie 
example $.cookie('name', ‘value'); 
4.删除一个cookie 
example $.cookie('name', null); 
5.取一个cookie(name)值给myvar 
var account= $.cookie('name'); 
**/
  cookieHelper: function(name, value, options) { 
    if (typeof value != 'undefined') { // name and value given, set cookie 
      options = options || {}; 
      if (value === null) { 
        value = ''; 
        options.expires = -1; 
      } 
      var expires = ''; 
      if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) { 
        var date; 
        if (typeof options.expires == 'number') { 
          date = new Date(); 
          date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000)); 
        } else { 
          date = options.expires; 
        } 
        expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE 
      } 
      var path = options.path ? '; path=' + options.path : ''; 
      var domain = options.domain ? '; domain=' + options.domain : ''; 
      var secure = options.secure ? '; secure' : ''; 
      document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join(''); 
    } else { // only name given, get cookie 
      var cookieValue = null; 
      if (document.cookie && document.cookie != '') { 
        var cookies = document.cookie.split(';'); 
        for (var i = 0; i < cookies.length; i++) { 
          var cookie = jQuery.trim(cookies[i]); 
          // Does this cookie string begin with the name we want? 
          if (cookie.substring(0, name.length + 1) == (name + '=')) { 
            cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); 
            break; 
          } 
        } 
      } 
      return cookieValue; 
    } 
  } 
});

Jquery操作Cookie记录用户查询过音讯

澳门葡京 1

那是二个Cookie数据变动的列表,

每回单击查询会积存一个域名,并把末了三遍询问的域名放在最上面。本例子最多囤积11个,大家能够依赖本身情形进行设置

下在我们一块儿来拜谒是怎么落到实处的吧

先写多少个操作Cookie的JS文件如下

function getid(id) {
return (typeof id == 'string') ? document.getElementById(id) : id
};
function getOffsetTop(el, p) {
var _t = el.offsetTop;
while (el = el.offsetParent) {
if (el == p) break;
_t += el.offsetTop
}
return _t
};
function getOffsetLeft(el, p) {
var _l = el.offsetLeft;
while (el = el.offsetParent) {
if (el == p) break;
_l += el.offsetLeft
}
return _l
};
var currentInput = null;
function BoxShow(e) {
var input = e;
if (!input.id) {
input = e.target ? e.target : e.srcElement;
}
currentInput = input;
FillUrls("site");
var box = getid("allSitesBoxHdl");
if (box.style.display == 'block' && currentInput.id == input.id) {
return;
}
box.style.left = (getOffsetLeft(input)) + 'px';
box.style.top = (getOffsetTop(input) + (input.offsetHeight - 1)) + 'px';
box.style.width = (input.offsetWidth - 4) + 'px';
box.style.display = 'block';
}
function BoxShowUrls(e) {
BoxShow(e);
}
function InputSetValue(val) {
var obj = currentInput;
obj.value = val;
if (obj.getAttribute('url') == 'true') {
var tags = document.getElementsByTagName('input');
for (var i = 0; i < tags.length; i++) {
if (tags[i].getAttribute('url') == 'true' && tags[i] != obj) {
tags[i].value = val;
}
}
}
BoxHide();
}
//删除时使用,传入一个要删除的值就可以删除
function DelAllSitesValue(value) {
var allSites = $.cookie("site");
allSites = allSites.replace(value + "|", "");
$.cookie("site", allSites, { expires: 7 });
FillUrls("site");
}
function BoxHide() {
if (getid("allSitesBoxHdl")) {
getid("allSitesBoxHdl").style.display = 'none';
}
}
//加载列表
function FillUrls(cookieName) {
var urls = $.cookie(cookieName);
var html = "";
if (urls) {
var urllist = urls.split('|');
var forlength = 0;
var stringcookie;
for (var i = urllist.length - 1; i >= 0; i--) {
var textval = urllist[i];
if ($.trim(textval) != "" && $.trim(textval) != "undefined") {
html += "<li class="lis"><a href="javascript:InputSetValue('" + textval + "');">" + textval + "</a></li><br/>";
forlength = forlength + 1;
if (forlength > 10) {
$.cookie("site", stringcookie, { expires: 7 });
break;
} else {
stringcookie = textval + "|" + stringcookie;
}
}
}
} else {
html += "<li>没有记录</li>"
}
getid("allSitesBoxContent").innerHTML = html;
}
function closeIME(e) {
var obj = e.target ? e.target : e.srcElement;
obj.style.imeMode = 'disabled';
}
function OnPaste(e) {
var obj = e.target ? e.target : e.srcElement;
setTimeout("MoveHttp('" + obj.id + "')", 100);
}
function MoveHttp(id) {
var val = getid(id).value;
val = val.replace("http://", "");
if (val[val.length - 1] == '/') {
val = val.substring(0, val.length - 1);
}
getid(id).value = val;
}
function OnKeyup(e) {
var obj = e.target ? e.target : e.srcElement;
setTimeout("addInput('" + obj.id + "')", 200);
}
function addInput(id) {
var obj = getid(id);
//如果是一个没有True的input不执行
if (obj.getAttribute('url') == 'true') {
if (obj.value.indexOf('。') > 0) {
obj.value = obj.value.replace('。', '.');
}
var tags = document.getElementsByTagName('input');
for (var i = 0; i < tags.length; i++) {
if (tags[i].getAttribute('url') == 'true' && tags[i] != obj) {
tags[i].value = obj.value;
}
}
}
}
function Init() {
$("#allSitesBoxHdl")[0].style.display = 'none';
$(":text").each(function () {
$(this).bind("keyup", OnKeyup);
$(this).bind("mousedown", BoxShowUrls);
$(this).bind("mouseout", BoxHide);
$(this).bind("focus", closeIME);
$(this).bind("paste", OnPaste);
$(this).bind("mouseout", BoxHide);
$(this)[0].setAttribute('autocomplete', 'off');
});
//取出Cookie
var icpSite = $.cookie("site");
if (icpSite) {
//取出Cookie不为空的话就给当前框
icpSite = icpSite.split('|')[0];
$("#site").val(icpSite);
}
}

在那中间还附带了那般一个效率,正是同一时间输入几个输入框的值,如下图

澳门葡京 2

只要那些输入框要使用那样的意义只要增多贰性子情为url=”true”就行了,那样有助于可操作性强,想给这么些框加效果就增加那个个性,不想加的间接不加url=”true”
就OK了。

在接纳那么些效果的分界面增多如下代码

<div style="display: none; position: absolute;" id="allSitesBoxHdl" class="classlist"
  onmouseover="this.style.display='block'" onmouseout="this.style.display='none'">
  <ul id="allSitesBoxContent">
  </ul>
</div>
<script type="text/javascript">
Init();
</script>

除了的JS直接放在叁个Js文件里,援用进来就行了
下拉列表是怎么加载的吧?看上边包车型大巴贰个主意就了然了

加载列表

function FillUrls(cookieName) {
var urls = $.cookie(cookieName);
var html = "";
if (urls) {
var urllist = urls.split('|');
var forlength = 0;
var stringcookie;
for (var i = urllist.length - 1; i >= 0; i--) {
var textval = urllist[i];
if ($.trim(textval) != "" && $.trim(textval) != "undefined") {
html += "<li class="lis"><a href="javascript:InputSetValue('" + textval + "');">" + textval + "</a></li><br/>";
forlength = forlength + 1;
if (forlength > 10) {//在这里我只加载10条,大家可以根据自己的情况进行调整
$.cookie("site", stringcookie, { expires: 7 });
break;
} else {//如果超出10个的话就取最后10个
stringcookie = textval + "|" + stringcookie;
}
}
}
} else {
html += "<li>没有记录</li>"
}
getid("allSitesBoxContent").innerHTML = html;
}

完了了那几个之后大家只必要在单击查询时展打开仓库储Cookie就行了,看下边包车型客车章程

操作Cookie类

function setCookie(name, value) {
var oldcookie = $.cookie(name);
if (oldcookie == null) {
$.cookie(name, value, { expires: 7 });
} else {
if ($.cookie(name).indexOf(value) == -1) {
$.cookie(name, oldcookie + "|" + value, { expires: 7 });
} else {
$.cookie(name, oldcookie.replace(value, "") + "|" + value, { expires: 7 });
}
}
FillUrls(name);
}

调用 时如此写
复制代码 代码如下:setCookie(“site”,
strdomin);
好了意义实现。

进行具体的测量检验

代码写的不是很好,希望我们多提提建议,我们开始展览对应修改争取更周详。

Cookie是积累的客户端的,贰个并且不得不访谈同域名下的Cookie,子域名之间能够并行访谈,只要加多domain属性就行了,存储的主意如下
复制代码 代码如下:$.cookie(“domain”,
value, { expires: 7, domain: “7c.com” });
取的时刻一直写
$.cookie(“domain”);就好了,只若是子域名,都这么调用,那样可以完成本域名下的Cookie分享的法力。

Cookie的有效使用会给大家的网址带来N多意料之外的成效和成效,大家调换下

越多关于jQuery操作cookie相关内容可查阅本站专题:《jQuery的cookie操作手艺总括》

愿意本文所述对大家jQuery程序设计具有支持。

本文实例陈诉了jQuery中cookie插件用法。分享给大家供大家参谋,具体如下:

利用JQuery操作cookie时 发生取的值不科学的难题:
结果开掘cookie有八个不等的性质:
名称,内容,域,路径

cookie在jquery中有钦定的cookie操作类,上面作者先来介绍大家在利用cookie操作类时的有的标题,然后介绍准确的采取办法。

有关Jquery操作Cookie取值错误的消除方法,jquery中cookie用法实例详解。你只怕感兴趣的篇章:

  • jquery.cookie.js用法实例详解
  • jquery读写cookie操作实例深入分析
  • jQuery基于cookie完毕的购物车实例剖判
  • jQuery中cookie插件用法实例剖判
  • 通过Jquery.cookie.js完结体现浏览网页的历史记录超管用
  • jQuery达成强制cookie过期方法汇总
  • jquery.cookie.js使用指南
  • jQuery操作cookie方法实例教程
  • jquery.cookie用法详细分析

本文实例陈说了jquery中cookie用法。分享给大家供大家参谋,具体如下:
cookie在jqu…

Jquery里面提供了无数插件,方便,安全,飞速实用。那节一齐熟稔下JQUECR-VY中操作库克ie的插件,插件名叫jquery.cookie.js,能够去官方网站下载。

复制代码 代码如下:

采用JQuery操作cookie时 发生取的值不得法的难点:
结果发现cookie有多少个不等的性能:
名称,内容,域,路径

下载地址: .

$.cookie(‘the_cookie’); // 读取 cookie
$.cookie(‘the_cookie’, ‘the_value’); // 存储 cookie
$.cookie(‘the_cookie’, ‘the_value’, { expires: 7 }); //
存款和储蓄一个带7天期限的 cookie
$.cookie(‘the_cookie’, ”, { expires: -1 }); // 删除 cookie

$.cookie('the_cookie'); // 读取 cookie 
$.cookie('the_cookie', 'the_value'); // 存储 cookie 
$.cookie('the_cookie', 'the_value', { expires: 7 }); // 存储一个带7天期限的 cookie 
$.cookie('the_cookie', '', { expires: -1 }); // 删除 cookie

插件首要报告如下多少个用法

使用:
$.cookie(“currentMenuID”, menuID); 时 未钦命域和门路。
具备当域和路线差别期会发生差异的cookie

使用:

1.创建Cookie

$.cookie(“currentMenuID”); 取值时会产生难点。
故:
$.cookie(“currentMenuID”, “menuID”, { path: “/”});
展开覆盖。同域下同八个cookieID对应三个值。

复制代码 代码如下:

创建四个称呼为username,值为 admin的cookie ,如下

您也许感兴趣的篇章:

  • jQuery的cookie插件达成保存用户登录新闻
  • jquery操作cookie插件分享
  • jquery.cookie用法详细解析
  • jquery.cookie()
    方法的行使(读取、写入、删除)
  • jquery cookie的用法计算
  • jquery
    删除cookie失效的缓和措施
  • 怎么样使用php与jquery设置和读取cookies
  • 动用jQuery操作Cookies的落到实处代码
  • 依靠Jquery的$.cookie()完结超过页面tabs导航完毕代码
  • 基于jquery的cookie的用法
  • jQuery操作cookie方法实例教程

$.cookie(“currentMenuID”, menuID);

复制代码 代码如下:

时 未钦赐域和路径。

$.cookie(‘username’,”admin”);

富有当域和路子区别临时候会发生不一样的cookie

自然cookie还包蕴路线,过期时光等任何参数,一同看下别的参数的用法

复制代码 代码如下:

复制代码 代码如下:

$.cookie(“currentMenuID”);

$.cookie(‘username’, ‘admin’, {expires: 7, path: ‘/’, domain:
‘jquery.com’, secure: true});

取值时会产生难题。

expires:表示过期时间,默以为天,如上表示过期时间为7天,倘诺轻巧熬期时间,表示关闭浏览器时候,cookie将被去除

故:

也能够设置cookie的逾期时间,如下设置3分钟后过期

复制代码 代码如下:

var dt= new date();
dt.settime(date.gettime() + (3* 60 * 1000));
$.cookie('username', 'admin', { expires: dt});

$.cookie(“currentMenuID”, “menuID”, { path: “/”});

path:定义cookie的灵光路线,私下认可情形下路线为创设cookie网页所在的门道,假设想让一切网址访问到,路线设置为path:
‘/’

实行覆盖。同域下同三个cookieID对应三个值。

domain:设置cookie所在的域

下边大家来看个实例

secure:  就算为true表示cookie的传导须求采纳https安全磋商,暗中认可为false

关于cookie的path设置需求留心,要是不安装path:’/’的话,path则会依照目录自动安装[如:
‘/user’]

2.删除Cookie

$.extend({ 
/** 
 1. 设置cookie的值,把name变量的值设为value  
example $.cookie('name', ‘value'); 
 2.新建一个cookie 包括有效期 路径 域名等 
example $.cookie('name', ‘value', {expires: 7, path: ‘/', domain: ‘jquery.com', secure: true}); 
3.新建cookie 
example $.cookie('name', ‘value'); 
4.删除一个cookie 
example $.cookie('name', null); 
5.取一个cookie(name)值给myvar 
var account= $.cookie('name'); 
**/
  cookieHelper: function(name, value, options) { 
    if (typeof value != 'undefined') { // name and value given, set cookie 
      options = options || {}; 
      if (value === null) { 
        value = ''; 
        options.expires = -1; 
      } 
      var expires = ''; 
      if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) { 
        var date; 
        if (typeof options.expires == 'number') { 
          date = new Date(); 
          date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000)); 
        } else { 
          date = options.expires; 
        } 
        expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE 
      } 
      var path = options.path ? '; path=' + options.path : ''; 
      var domain = options.domain ? '; domain=' + options.domain : ''; 
      var secure = options.secure ? '; secure' : ''; 
      document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join(''); 
    } else { // only name given, get cookie 
      var cookieValue = null; 
      if (document.cookie && document.cookie != '') { 
        var cookies = document.cookie.split(';'); 
        for (var i = 0; i < cookies.length; i++) { 
          var cookie = jQuery.trim(cookies[i]); 
          // Does this cookie string begin with the name we want? 
          if (cookie.substring(0, name.length + 1) == (name + '=')) { 
            cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); 
            break; 
          } 
        } 
      } 
      return cookieValue; 
    } 
  } 
});

能够选取三种格局

Jquery操作Cookie记录用户查询过信息

$.removeCookie("username");
$.cookie('username',"null");

澳门葡京 3

3.读取cookie

那是一个Cookie数据变化的列表,

复制代码 代码如下:

每一次单击查询会积攒三个域名,并把最终一遍询问的域名放在最上方。本例子最多囤积11个,大家能够依照本身境况进行设置

var account = $.cookie(‘username’);

下在大家一同来拜访是怎么落到实处的呢

假使未有写入cookie,读取到的值为undefined

先写二个操作Cookie的JS文件如下

附:jquery.cookie.js完整代码如下:

function getid(id) {
return (typeof id == 'string') ? document.getElementById(id) : id
};
function getOffsetTop(el, p) {
var _t = el.offsetTop;
while (el = el.offsetParent) {
if (el == p) break;
_t += el.offsetTop
}
return _t
};
function getOffsetLeft(el, p) {
var _l = el.offsetLeft;
while (el = el.offsetParent) {
if (el == p) break;
_l += el.offsetLeft
}
return _l
};
var currentInput = null;
function BoxShow(e) {
var input = e;
if (!input.id) {
input = e.target ? e.target : e.srcElement;
}
currentInput = input;
FillUrls("site");
var box = getid("allSitesBoxHdl");
if (box.style.display == 'block' && currentInput.id == input.id) {
return;
}
box.style.left = (getOffsetLeft(input)) + 'px';
box.style.top = (getOffsetTop(input) + (input.offsetHeight - 1)) + 'px';
box.style.width = (input.offsetWidth - 4) + 'px';
box.style.display = 'block';
}
function BoxShowUrls(e) {
BoxShow(e);
}
function InputSetValue(val) {
var obj = currentInput;
obj.value = val;
if (obj.getAttribute('url') == 'true') {
var tags = document.getElementsByTagName('input');
for (var i = 0; i < tags.length; i++) {
if (tags[i].getAttribute('url') == 'true' && tags[i] != obj) {
tags[i].value = val;
}
}
}
BoxHide();
}
//删除时使用,传入一个要删除的值就可以删除
function DelAllSitesValue(value) {
var allSites = $.cookie("site");
allSites = allSites.replace(value + "|", "");
$.cookie("site", allSites, { expires: 7 });
FillUrls("site");
}
function BoxHide() {
if (getid("allSitesBoxHdl")) {
getid("allSitesBoxHdl").style.display = 'none';
}
}
//加载列表
function FillUrls(cookieName) {
var urls = $.cookie(cookieName);
var html = "";
if (urls) {
var urllist = urls.split('|');
var forlength = 0;
var stringcookie;
for (var i = urllist.length - 1; i >= 0; i--) {
var textval = urllist[i];
if ($.trim(textval) != "" && $.trim(textval) != "undefined") {
html += "<li class="lis"><a href="javascript:InputSetValue('" + textval + "');">" + textval + "</a></li><br/>";
forlength = forlength + 1;
if (forlength > 10) {
$.cookie("site", stringcookie, { expires: 7 });
break;
} else {
stringcookie = textval + "|" + stringcookie;
}
}
}
} else {
html += "<li>没有记录</li>"
}
getid("allSitesBoxContent").innerHTML = html;
}
function closeIME(e) {
var obj = e.target ? e.target : e.srcElement;
obj.style.imeMode = 'disabled';
}
function OnPaste(e) {
var obj = e.target ? e.target : e.srcElement;
setTimeout("MoveHttp('" + obj.id + "')", 100);
}
function MoveHttp(id) {
var val = getid(id).value;
val = val.replace("http://", "");
if (val[val.length - 1] == '/') {
val = val.substring(0, val.length - 1);
}
getid(id).value = val;
}
function OnKeyup(e) {
var obj = e.target ? e.target : e.srcElement;
setTimeout("addInput('" + obj.id + "')", 200);
}
function addInput(id) {
var obj = getid(id);
//如果是一个没有True的input不执行
if (obj.getAttribute('url') == 'true') {
if (obj.value.indexOf('。') > 0) {
obj.value = obj.value.replace('。', '.');
}
var tags = document.getElementsByTagName('input');
for (var i = 0; i < tags.length; i++) {
if (tags[i].getAttribute('url') == 'true' && tags[i] != obj) {
tags[i].value = obj.value;
}
}
}
}
function Init() {
$("#allSitesBoxHdl")[0].style.display = 'none';
$(":text").each(function () {
$(this).bind("keyup", OnKeyup);
$(this).bind("mousedown", BoxShowUrls);
$(this).bind("mouseout", BoxHide);
$(this).bind("focus", closeIME);
$(this).bind("paste", OnPaste);
$(this).bind("mouseout", BoxHide);
$(this)[0].setAttribute('autocomplete', 'off');
});
//取出Cookie
var icpSite = $.cookie("site");
if (icpSite) {
//取出Cookie不为空的话就给当前框
icpSite = icpSite.split('|')[0];
$("#site").val(icpSite);
}
}
/*!
 * jQuery Cookie Plugin v1.4.1
 * https://github.com/carhartl/jquery-cookie
 *
 * Copyright 2006, 2014 Klaus Hartl
 * Released under the MIT license
 */
(function (factory) {
  if (typeof define === 'function' && define.amd) {
    // AMD (Register as an anonymous module)
    define(['jquery'], factory);
  } else if (typeof exports === 'object') {
    // Node/CommonJS
    module.exports = factory(require('jquery'));
  } else {
    // Browser globals
    factory(jQuery);
  }
}(function ($) {
  var pluses = /\+/g;
  function encode(s) {
    return config.raw ? s : encodeURIComponent(s);
  }
  function decode(s) {
    return config.raw ? s : decodeURIComponent(s);
  }
  function stringifyCookieValue(value) {
    return encode(config.json ? JSON.stringify(value) : String(value));
  }
  function parseCookieValue(s) {
    if (s.indexOf('"') === 0) {
      // This is a quoted cookie as according to RFC2068, unescape...
      s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
    }
    try {
      // Replace server-side written pluses with spaces.
      // If we can't decode the cookie, ignore it, it's unusable.
      // If we can't parse the cookie, ignore it, it's unusable.
      s = decodeURIComponent(s.replace(pluses, ' '));
      return config.json ? JSON.parse(s) : s;
    } catch(e) {}
  }
  function read(s, converter) {
    var value = config.raw ? s : parseCookieValue(s);
    return $.isFunction(converter) ? converter(value) : value;
  }
  var config = $.cookie = function (key, value, options) {
    // Write
    if (arguments.length > 1 && !$.isFunction(value)) {
      options = $.extend({}, config.defaults, options);
      if (typeof options.expires === 'number') {
        var days = options.expires, t = options.expires = new Date();
        t.setMilliseconds(t.getMilliseconds() + days * 864e+5);
      }
      return (document.cookie = [
        encode(key), '=', stringifyCookieValue(value),
        options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
        options.path ? '; path=' + options.path : '',
        options.domain ? '; domain=' + options.domain : '',
        options.secure ? '; secure' : ''
      ].join(''));
    }
    // Read
    var result = key ? undefined : {},
      // To prevent the for loop in the first place assign an empty array
      // in case there are no cookies at all. Also prevents odd result when
      // calling $.cookie().
      cookies = document.cookie ? document.cookie.split('; ') : [],
      i = 0,
      l = cookies.length;
    for (; i < l; i++) {
      var parts = cookies[i].split('='),
        name = decode(parts.shift()),
        cookie = parts.join('=');
      if (key === name) {
        // If second argument (value) is a function it's a converter...
        result = read(cookie, value);
        break;
      }
      // Prevent storing a cookie that we couldn't decode.
      if (!key && (cookie = read(cookie)) !== undefined) {
        result[name] = cookie;
      }
    }
    return result;
  };
  config.defaults = {};
  $.removeCookie = function (key, options) {
    // Must not alter options, thus extending a fresh object...
    $.cookie(key, '', $.extend({}, options, { expires: -1 }));
    return !$.cookie(key);
  };
}));

其中还捎带了那般一个效果,正是同不常间输入四个输入框的值,如下图

期待本文所述对我们jQuery程序设计有所支持。

澳门葡京 4

你也许感兴趣的作品:

  • jQuery轻易操作cookie的插件实例
  • jquery中cookie用法实例详解(获取,存款和储蓄,删除等)
  • jquery.cookie.js用法实例详解
  • jquery读写cookie操作实例分析
  • jquery.cookie完毕的客户端购物车操作实例
  • jQuery基于cookie达成的购物车实例分析
  • 快捷学习jQuery插件
    Cookie插件使用办法
  • jQuery操作cookie

若是不行输入框要使用那样的效用只要加上三个属性为url=”true”就行了,那样方便
可操作性强,想给那多少个框加效果就拉长那天性子,不想加的一贯不加url=”true”
就OK了。

在使用这么些功能的分界面加多如下代码

<div style="display: none; position: absolute;" id="allSitesBoxHdl" class="classlist"
  onmouseover="this.style.display='block'" onmouseout="this.style.display='none'">
  <ul id="allSitesBoxContent">
  </ul>
</div>
<script type="text/javascript">
Init();
</script>

除了这一个之外的JS直接放在叁个Js文件里,援引进来就行了
下拉列表是怎么加载的啊?看上边包车型地铁三个艺术就领会了

加载列表

function FillUrls(cookieName) {
var urls = $.cookie(cookieName);
var html = "";
if (urls) {
var urllist = urls.split('|');
var forlength = 0;
var stringcookie;
for (var i = urllist.length - 1; i >= 0; i--) {
var textval = urllist[i];
if ($.trim(textval) != "" && $.trim(textval) != "undefined") {
html += "<li class="lis"><a href="javascript:InputSetValue('" + textval + "');">" + textval + "</a></li><br/>";
forlength = forlength + 1;
if (forlength > 10) {//在这里我只加载10条,大家可以根据自己的情况进行调整
$.cookie("site", stringcookie, { expires: 7 });
break;
} else {//如果超出10个的话就取最后10个
stringcookie = textval + "|" + stringcookie;
}
}
}
} else {
html += "<li>没有记录</li>"
}
getid("allSitesBoxContent").innerHTML = html;
}

姣好了这一个之后大家只供给在单击查询时进行仓储Cookie就行了,看上面包车型地铁不二秘技

操作Cookie类

function setCookie(name, value) {
var oldcookie = $.cookie(name);
if (oldcookie == null) {
$.cookie(name, value, { expires: 7 });
} else {
if ($.cookie(name).indexOf(value) == -1) {
$.cookie(name, oldcookie + "|" + value, { expires: 7 });
} else {
$.cookie(name, oldcookie.replace(value, "") + "|" + value, { expires: 7 });
}
}
FillUrls(name);
}

调用 时那样写

复制代码 代码如下:

setCookie(“site”, strdomin);

好了效果达成。

进展实际的测量检验

代码写的不是很好,希望我们多提提指出,大家开始展览相应修改争取更宏观。

Cookie是积攒的客户端的,三个并且只好访谈同域名下的库克ie,子域名以内能够并行访谈,只要加上domain属性就行了,存储的诀窍如下

复制代码 代码如下:

$.cookie(“domain”, value, { expires: 7, domain: “7c.com” });

取的时间平素写
$.cookie(“domain”);就好了,只若是子域名,都这样调用,那样能够达到本域名下的Cookie分享的作用。

Cookie的实用行使会给我们的网站带来N多意想不到的功用和效率,大家交流下

越多关于jQuery操作cookie相关内容可查阅本站专项论题:《jQuery的cookie操作技巧总括》

但愿本文所述对大家jQuery程序设计有着帮忙。

你或者感兴趣的篇章:

  • jQuery通过写入cookie达成转移网页背景的形式
  • Jquery操作cookie记住用户名
  • jquery.cookie.js用法实例详解
  • jquery.cookie实现的客户端购物车操作实例
  • jQuery基于cookie完成的购物车实例深入分析
  • jQuery操作cookie方法实例教程
  • jQuery的cookie插件实现保存用户登录消息
  • jquery.cookie()
    方法的利用(读取、写入、删除)
  • jquery
    删除cookie失效的消除办法
  • 可包容IE的获取及安装cookie的jquery.cookie函数方法
  • 详解jQuery的Cookie插件

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website