在PHP,.NET等服务器端使用cookie很容易
我想将cookies用于静态网站,这只是HTML,CSS& JQuery。
有人知道如何在JQuery中实现cookie吗?
答案 0 :(得分:6)
jQuery Cookie插件是一种方法:
https://github.com/carhartl/jquery-cookie
你这样使用它:
$.cookie('cookie_name', 'value'); // to set
$.cookie('cookie_name'); // to get
答案 1 :(得分:4)
答案 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(请参阅here和IE userData Behavior),但最好用4K作为Cookie(参见here)
我希望您只考虑一下Cookie的替代品。
答案 4 :(得分:0)
阅读Cookie:
var cookieValue = $.cookie("cookieName");
写Cookie:
$.cookie("cookieName", "CookieValue");
答案 5 :(得分:0)
您可以通过访问document.cookie
来使用普通JS。
答案 6 :(得分:0)
一个简单,轻量级的jQuery插件,用于读取,编写和删除cookie。有关详细信息演示和示例,请参阅链接。
https://github.com/carhartl/jquery-cookie