1
onClick="javascript:document.cookie='n=1'"

我是 javascript 新手

我有一个 btn 点击会设置 cookie,如何在这个 cookie 上设置过期时间 1 小时?

4

3 回答 3

3

当您将 cookie 写入浏览器时,您需要指定过期日期或最长期限。但是,请注意,Interent Explorer 8 及更低版本会忽略 max-age。因此,如果您希望从该浏览器获得使用,您可以只依靠 expires。

例子:

<script type="text/javascript">
function setMyCookie() {
   var now = new Date();
   var expires = new Date(now.setTime(now.getTime() + 60 * 60 * 1000)); //Expire in one hour
   document.cookie = 'n=1;path=/;expires='+expires.toGMTString()+';';
}
</script>

你的按钮可以像这样调用这个函数:

<input type="button" onclick="setMyCookie();">Set Cookie</input>

请注意,我还包括指示此 cookie 是站点范围的路径。

您可以在此处阅读有关使用日期或 max-age 过期 cookie 的更多信息:http: //mrcoles.com/blog/cookies-max-age-vs-expires/

于 2013-09-05T14:09:55.580 回答
1

你可以做:

onClick="setupCookie();"

function setupCookie() {
    document.cookie = "n=1";
    setTimeout(function() {
        document.cookie = "n=0";
    }, 3600000); // 1 hour
}
于 2013-09-05T13:58:03.853 回答
0

单击时,您可以调用一些 javascript 函数,并在创建 cookie 本身时设置过期时间,请参考此

javascript设置cookie过期时间

于 2013-09-05T13:58:10.607 回答