实施cookie时出现问题。
我实施cookie来存储游戏数据。这些数据很少,所以cookies应该是正确的想法。我在我的代码中为cookie实现了两个函数。
Im implementing cookies to store data for a game. This data is in small amounts so cookies should be the right idea. Ive implemented two functions in my code for cookies.
function setcookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}
function getcookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
}
return "";
}
我然后检查是否设置了cookie,根据其他来源这应该有效:
I then put in a check to see if the cookies are set, according to other sources this should work:
if(typeof cookieexists === null){
starttimer();
}else{
kernels = getcookie("kernels");
xtrakernels = getcookie("xtrakernels");
nbprice = getcookie("nbprice");
ppprice = getcookie("ppprice");
kps = getcookie("kps");
apprice = getcookie("apprice");
kcprice = getcookie("kcprice");
starttimer();
}
starttimer()每秒调用kernps(),这里是kernps()
starttimer() calls on kernps() every second, here is kernps()
function kernps() {
kernels = kernels + kps;
document.getElementById('number').innerHTML = kernels;
setcookie("kernels", kernels, "100");
setcookie("xtrakernels", xtrakernels, "100");
setcookie("nbprice", nbprice, "100");
setcookie("ppprice", ppprice, "100");
setcookie("kps", kps, "100");
setcookie("apprice", apprice, "100");
setcookie("kcprice", kcprice, "100");
}
以及所有这些,我已经宣布了我的变量(在所有这些之前)
along with all this, i have declared my variables (Before all of this)
var cookieexists = getcookie("kernels");
var kernels = 1;
var xtrakernels = 1;
var nbprice = 50;
var ppprice = 250;
var kps = 0;
var apprice = 75;
var kcprice = 275;
所有变量最终都为null。
我不知道从哪里开始发生了什么。
注意:如果重要的话,我已经尝试并清除了我的cookie。这没用。
What happens is all the variables end up as null.
I have no idea where to start as to what is going on.
NOTE: I have tried and cleared my cookies if that matters. That did not work.