7

私はこのJavaScriptコードを持っています:

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

2 時間後に Cookie の有効期限が切れるようにするにはどうすればよいですか?

4

6 に答える 6

10

同じタイプの関数を使用する場合は、daysparam をに変換しhoursて渡し2、2 時間の有効期限を取得します。

function spu_createCookie(name, value, hours)
{
    if (hours)
    {
        var date = new Date();
        date.setTime(date.getTime()+(hours*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else
    {
        var expires = "";
    }

    document.cookie = name+"="+value+expires+"; path=/";
}
于 2013-09-28T16:20:56.267 に答える
5

まあ-最も明白なことは、「有効期限」の日付を+2時間にすることですか?:)。ここにそのための素晴らしいプロトタイプがあります: Javascript Date オブジェクトに時間を追加しますか?

于 2013-09-28T16:05:13.953 に答える
5

これを試して:

function writeCookie (key, value, hours) {
    var date = new Date();

    // Get milliseconds at current time plus number of hours*60 minutes*60 seconds* 1000 milliseconds
    date.setTime(+ date + (hours * 3600000)); //60 * 60 * 1000

    window.document.cookie = key + "=" + value + "; expires=" + date.toGMTString() + "; path=/";

    return value;
};

使用法:

<script>
writeCookie ("myCookie", "12345", 24);
</script>
//for 24 hours
于 2013-09-28T16:03:25.360 に答える
1

jquery-cookie を試してください。クッキーの操作が非常に簡単になります。

于 2013-09-28T16:06:38.890 に答える
0

これで十分です。

var now = new Date();
var time = now.getTime();
time += 7200 * 1000;
now.setTime(time);
document.cookie = 
     name+ '=' + value + 
     '; expires=' + now.toGMTString() + 
     '; path=/';
于 2013-09-28T16:21:28.300 に答える