これは主に document.cookie 文字列を分析することによって組み立てられます。
JavaScript での Cookie の操作を確認します:
Cookie を追加するには、document.cookie="userId=111" を使用できます。
完全版を使用できます。 document.cookie="userId=111;domain=.google.com;path=;secure=secure;expire=" date.toGMTString();
Cookie の有効期限、ドメイン名、パスを設定できます。
必須。削除するには、有効期限を今より前に設定するだけです。
変更した javascript.cookie.js クラスを追加します。
/*
Cookie ヘルパー クラス
書き込み、取得、削除が簡単
*/
var myCookie= {
get :function(name){
if(typeof name != "unknown")
{
//名前が指定された場合、値を取得する関数を呼び出します
return myCookie_get(name);
}else {
//名前が指定されていない場合は、すべての Cookie 項目を取得します
return myCookie_getAll();
}
},
add:function(name, value,options){
// クッキーを書き込みます
myCookie_add(name,value,options);
},
delete:function(name){
// クッキーを削除します
myCookie_add(name, null);
}
}
String.prototype.Trim = function()
{
return this.replace(/^s /g,"")。 replace(/s $ /g,"");
}
/*
Cookie 書き込み関数
@name:Cookie 名が null ではありません
@value:Cookie 値 null== Cookie を削除します
@option:{"expires":有効期限;"path":/;"domain":localhost;"secure":secure}
*/
function myCookie_add(name,value, options)
{
if (typeof value != 'unknown') { // 指定された名前と値、Cookie を設定します
options = options {}; ) {
値 = '';
options.expires = -1;
}
if (options.expires && (typeof options.expires == ')数値' || オプション .expires.toUTCString)) {
var date;
if (typeof options.expires == 'number') {
date = new Date(); (date.getTime( ) (options.expires * 24 * 60 * 60 * 1000));
} else {
date = options.expires;
expires = '; date.toUTCString() ; // 期限切れ属性を使用します。IE ではサポートされていません
}
var path = options.path '; path=' options.path : '';ドメイン = オプション.ドメイン ? '; ドメイン=' オプション.ドメイン : '';
var secure = options.secure ? ' : ''; encodeURIComponent(value), 期限切れ, パス, ドメイン, secure].join('');
}
}
/*
名前のクッキーを取得
@name:クッキーの名前
*/
function myCookie_get(name)
{
var cookieValue = null;
if (document.cookie && document.cookie != '') {
var cookies = document. cookie.split(' ;');
for (var i = 0; i < cookies.length; i ) {
var cookie = cookies[i].Trim();この Cookie 文字列は希望する名前で始まりますか?
if (cookie.substring(0, name.length 1) == (name '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length) 1));
break;
}
}
}
return cookieValue;
}
/*
すべての Cookie を JSON として取得します
*/
function myCookie_getAll()
{
var cookieArray = new Array();
var temp; cookie != '' ) {
var cookies = document.cookie.split(';');
for (var i = 0; i var cookie = cookies[i].Trim();
temp=cookie.split('=');
cookieArray.push("{"name":"" decodeURIComponent(temp[0)] ]) "", "value":"" decodeURIComponent(temp[1]) ""}");
}
str=cookieArray.join(",");
}
str ="[" str "]";
return eval('(' str ')');
呼び出しも非常に簡単です
コードをコピー
コードは次のとおりです:
myCookie.add("useraccount","admin",{"expires" :5});//期間を追加します 5 日間の Cookie に対して
alert(myCookie.get("useraccount"));//Cookie を取得します
cookies=myCookie.get();//すべての Cookie を取得しますfor(var i=0 ;i{ alert(cookies[i]["name"] ":" cookies[i]["value"]); } myCookie.delete("useraccount");// 追加したばかりの Cookie を削除します alert(myCookie.get("useraccount"));