如何使全局变量与每个html页面具有不同的值?

时间:2015-10-07 00:27:47

标签: javascript

我正在创建一个游戏(如4个图片1个单词),它涉及一个答案变量。将有一个按钮,onclick将运行一个函数,如果它匹配此变量的值,则检查用户的答案。每页将有一个拼图,每个拼图/页面的答案变量都有不同的值。页面加载时,此变量必须设置其值。我查了一下,我没有看到任何可以帮助我的东西,我不知道我会怎么做。提前谢谢。

1 个答案:

答案 0 :(得分:4)

在这种情况下,您可能需要localStorage或使用Cookies。如果您定位的是现代浏览器,则可以自由使用localStorage,这是HTML5的概念。

当您使用click事件时,请使用:

localStorage.setItem('scores', [scores-array]);

然后当你加载页面时,试试这个:

localStorage.getItem('scores');

要了解有关localStorage的更多信息,请使用以下命令:

Cookie 的另一个选项取决于您的浏览器的隐私设置。许多浏览器(不是很多)可能会禁用cookie,但您可以将其用作备用。您具有有限的数据类型存储(仅限字符串),可以使用以下命令启动:

document.cookie="scores=" + score_data;

使用以下方法检索它们:

function getCookie(cname) {
    var name = cname + "=";
    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 "";
}
getCookie(scores);