JavaScriptでcookieを扱うのは、値のエンコード・デコードや書き込む際の文字列結合、値を取り出す実装など意外に面倒。
しかし、jQueryプラグインの「jquery.cookie.js」を利用すれば、cookieを簡単に扱えるようになる。
jquery.cookie.js は GitHub(https://github.com/carhartl/jquery-cookie)からダウンロードすることができる。
「jquery.cookie.js」の読込みは次のように行う。
<script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery.cookie.js"></script>
■cookieの設定
cookieを保存するには、次のように記述する。
$.cookie("KEY", "VALUE", { expires: 7 });
KEYには保存したいcookieの名前を、VALUEには値を入れる。
その後ろの{}の中には、様々なoptionが指定できる。
上記コードの場合は「有効期限は7日間」になる。
有効期限(expires)が設定されていない場合には、クッキーはブラウザを閉じたタイミングで削除される。
$.cookieメソッドで利用できるパラメータ
パラメータ | 概要 |
---|---|
expires | 有効期限(日数) |
path | 有効なパス(ドメイン全体で利用したい場合は’/’を設定) |
domain | 有効なドメイン |
secure | HTTPS接続の場合のみにcookieを送信(デフォルトはfalse) |
■cookieの取得
cookieの値を取得したい場合は次のように記述する。
$.cookie("KEY");
保存時に設定したKEYを元に値を取り出す。
■cookieの削除
既存のクッキーを削除するには、$.removeCookieメソッドを使う。
$.removeCookie("KEY");
パスを指定する場合は、次のように記述する。
$.removeCookie("KEY", { path: "/" });