这个Javascript cookie脚本到目前为止工作得很好,你只需要调整你希望cookie在(expiresDays * 24)行中过期的时间。但是,我希望cookie在浏览器完全关闭时过期,但是当你还在网站上时cookie仍然存在,即使你去另一个网页或重新加载主页。我读到这是可行的,可以通过会话cookie完成,通过将值设置为0或没有值,但作为javascript的学习者,我不知道如何做,做任何更有经验的程序员知道如何调整脚本下面做我想做的事情?
<script type="text/javascript">
function setCookie(cookieName, cookieValue, expireDays,isGlobal) {
var expireDate = new Date();
expireDate.setTime(expireDate.getTime() +
(expireDays*24*60*60*1000));
var expires = "expires="+expireDate.toUTCString();
if(isGlobal){
document.cookie = cookieName + "=" + cookieValue + "; " +
expires+"; path=/";
}else{
document.cookie = cookieName + "=" + cookieValue + "; " +
expires;
}
}
function getCookie(cookieName) {
var name = cookieName + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0) return c.substring(name.length,
c.length);
}
return "";
}
function checkCookie(cookieName) {
if (getCookie(cookieName) != "") {
return true;
} else {
return false;
}
}
</script>
答案 0 :(得分:0)
我解决了这个问题,所需要的只是替换此行中的值:
from(expireDays * 24 * 60 * 60 * 1000))
并改为:
(expireDays “= 0”))
否则我保持不变的格式,cookie会持续访问网站,包括浏览网站。但是如果你完全关闭浏览器,cookie就会过期。