JQuery peut-il lire/écrire des cookies sur un navigateur?

exemple Simple: je veux avoir quelques éléments sur une page (comme divs ou table rows), et je veux laisser l'utilisateur cliquer sur eux pour les sélectionner. Cela semble assez facile à jQuery. Pour enregistrer les éléments sur lesquels un utilisateur clique sans avoir de dos post côté serveur, je pensais qu'un cookie serait un moyen simple de faire cela.

  1. cette hypothèse est-elle correcte dans ce cas?
  2. si elle est correcte, est-ce que l'API jQuery a quelque chose pour lire/écrire des informations sur les cookies qui sont plus agréables que les API JavaScript par défaut?
97
demandé sur a--m 2008-09-18 22:17:54

8 réponses

L'API JavaScript par défaut pour configurer un cookie est aussi simple que:

document.cookie = 'mycookie=valueOfCookie;expires=DateHere;path=/'

utilisez le plugin de cookie jQuery comme:

$.cookie('mycookie', 'valueOfCookie')
51
répondu adam 2012-04-09 07:39:53

vous aurez besoin du plugin de cookie, qui fournit plusieurs signatures supplémentaires à la fonction de cookie.

$.cookie('cookie_name', 'cookie_value') stocke un cookie transitoire (n'existe que dans le cadre de cette session, tandis que $.cookie('cookie_name', 'cookie_value', 'cookie_expiration") crée un cookie qui durera à travers les sessions - voir http://www.stilbuero.de/2006/09/17/cookie-plugin-for-jquery / for more information on the JQuery cookie plugin.

si vous voulez configurer des cookies qui sont utilisé pour l'ensemble du site, vous aurez besoin d'utiliser JavaScript comme ceci:

document.cookie = "name=value; expires=date; domain=domain; path=path; secure"
18
répondu Steve Moyer 2011-12-22 10:09:16

un nouveau plugin jQuery pour la récupération et la manipulation de cookies avec reliure pour les formulaires, etc: http://plugins.jquery.com/project/cookies

11
répondu 2008-11-15 16:52:32

pour répondre à votre question, oui. Les autres ont répondu à cette partie, mais il semble aussi que vous vous demandez si c'est la meilleure façon de le faire.

cela dépend probablement de ce que vous faites. En général, vous demandez à un utilisateur de cliquer sur ce qu'ils veulent acheter (par exemple, commander). Ensuite, ils cliquaient sur le bouton "Acheter" Ou "Acheter". Ensuite, le formulaire serait envoyé à une page et traiter le résultat. Tu pourrais faire tout ça avec un cookie mais je trouverais que c'est plus difficile.

Vous voulez publier votre deuxième question dans un autre sujet.

7
répondu SeanDowney 2008-11-15 17:05:21

regardez le Cookie Plugin pour jQuery.

5
répondu Ian 2015-07-19 16:26:54

vous pouvez parcourir tous les plugins jQuery marqués avec "cookie" ici:

http://plugins.jquery.com/plugin-tags/cookies

beaucoup d'options là.

découvrez celui appelé jQuery Storage, qui tire profit du stockage local de HTML5. Si localStorage n'est pas disponible, c'est par défaut les cookies. Cependant, il ne vous permet pas de fixer l'échéance.

4
répondu Marshall Æon 2011-01-15 23:28:02

il semble que le plugin de cookie jQuery n'est pas disponible en téléchargement. Cependant, vous pouvez télécharger le même plugin de cookie jQuery avec quelques améliorations décrites dans jQuery & Cookies (get/set/delete & a plugin) .

4
répondu jQuery Lover 2012-12-31 14:58:17

j'ai réussi à écrire un script permettant à l'utilisateur de choisir sa langue, en utilisant le script cookie de Klaus Hartl . Cela m'a pris quelques heures de travail, et j'espère pouvoir aider les autres.

2
répondu Porta Shqipe 2015-02-27 16:47:49