如何在JQuery中使用cookie

时间:2012-03-15 13:00:26

标签: javascript jquery-ui jquery jquery-plugins

在PHP,.NET等服务器端使用cookie很容易

我想将cookies用于静态网站,这只是HTML,CSS& JQuery。

有人知道如何在JQuery中实现cookie吗?

7 个答案:

答案 0 :(得分:6)

jQuery Cookie插件是一种方法:

https://github.com/carhartl/jquery-cookie

你这样使用它:

$.cookie('cookie_name', 'value'); // to set

$.cookie('cookie_name'); // to get

答案 1 :(得分:4)

您可以使用此plugin

示例:设置cookie

$.cookie("example", "foo");

答案 2 :(得分:3)

您不需要jQuery插件,您可以轻松地使用JavaScript访问Cookie。方法如下:https://developer.mozilla.org/en/DOM/document.cookie

但也许在其他答案中链接的插件可以让您更方便地访问。

答案 3 :(得分:2)

您确定cookie正是您所需要的吗?在许多情况下,有localStorage更好。

您写道,您希望将Cookie与静态网站一起使用,但Cookie会被发送到服务器并返回。是否真的需要您在领导静态网站时将信息发送到服务器?它会增加HTTP标头的大小并降低网站的性能(例如,请参阅here)。

Cookie有很严格的限制。对应于rfc2109的6.3部分或rfc6265的6.1:每个cookie至少4096个字节,每个域至少50个cookie(rfc2109中为20个),总共至少3000个cookie(rfc2109中为300个)。所以cookie不能用来保存太多的信息。例如,如果要保存每个网页的每个网格的状态,就可以快速达到限制。

如果您只想保存页面的某些用户首选项,可以使用localStorage,并且使用非常简单。

如果您更喜欢使用某些jQuery插件而不是直接使用localStorage,并且如果您需要支持旧的Web浏览器(例如IE6 / IE7),那么您可以使用jStorage。如果您的存储空间较小:128 KB而不是5 MB(请参阅hereIE userData Behavior),但最好用4K作为Cookie(参见here

我希望您只考虑一下Cookie的替代品。

答案 4 :(得分:0)

阅读Cookie:

var cookieValue = $.cookie("cookieName");

写Cookie:

$.cookie("cookieName", "CookieValue");

答案 5 :(得分:0)

您可以通过访问document.cookie来使用普通JS。

请参阅:http://jsfiddle.net/ShsYp/

另外:https://developer.mozilla.org/en/DOM/document.cookie

答案 6 :(得分:0)

一个简单,轻量级的jQuery插件,用于读取,编写和删除cookie。有关详细信息演示和示例,请参阅链接。
https://github.com/carhartl/jquery-cookie