1

Cookie を使用して単一の整数を保存しようとしているため、ユーザーがページを更新すると、以前の番号を取得できます (ビデオの二重表示を停止しようとして)。

これを達成するための最小要件は何ですか?

var randomNumber = Math.floor((Math.random()*10)+1);

document.cookie=(randomNumber);

クッキーの設定:

document.cookie = 'mycookie=' + randomNumber + ";max-age=" + (300) + ";";

Cookie の読み取り:

var cookie = document.cookie;

alert(decodeURIComponent(cookie));

Cookie には、push=1 や mycookie などのランダムな要素が含まれています。randomNumber を追加する前に、Cookie を null に設定する必要がありますか?

mycookie の値を取得する限り、Cookie を文字列に割り当てて、そこから mycookie を解析しますか?

4

2 に答える 2

2

タミルのコメントはしっかりしています。最小限の Cookie 使用量を超えたい場合は、これらの quirksmode 関数を使用します。

cookie_create = function (name,value,days) {
    var expires, date;

    if (days) {
        date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        expires = "; expires="+date.toGMTString();
    }
    else expires = "";
    document.cookie = name+"="+value+expires+"; path=/";

expires = date = null;
};


cookie_read = function (name) {
    var nameEQ = name + "=",
    ca = document.cookie.split(';'),
    len = ca.length,
    i, c; 

    for(i = 0; i < len; ++i) {
        c = ca[i];
        while (c.charAt(0) === ' ') c = c.substring(1); //,c.length);
        if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length); //,c.length);
    }

nameEQ = name = ca = i = c = len = null;
return null;
};


cookie_erase = function (name){
    cookie_create(name,"",-1);
name = null;
};
于 2012-06-30T08:39:24.803 に答える
1

document.cookieを使用して、JavaScript で Cookie を読み書きできます。

document.cookie = 'mycookie=' + randomNumber + '; path=/';

また、ユーザーがブラウザを閉じた後も Cookie を保持したい場合は、expires日付を指定できます。

于 2012-06-30T07:32:36.517 に答える