玩家可以为此游戏选择1P或AI模式。我们只是使用旗帜跟踪它。但是,如果我们在单击时将标志更改为true,则在我们路由到下一页时它会返回到默认值false。例如:
演练:用户会选择他们想要播放的模式 - AI或1P。然后,他们点击播放,将他们带到一个页面来选择一个主题。选择主题后,它们将被路由到相应的AI或1P游戏页面。
var ai = false;
$('.mode').click(function() {
ai = !ai;
$(this).text(function(i, text) {
return text === 'Select Mode: AI' ? 'Select Mode: 1P' : 'Select Mode: AI';
});
});
$('.states').click(function() {
// TODO flag engine to grab words from the states word bank
if (!ai) {
location.href = 'game.html';
} else {
location.href = 'roboGame.html';
}
});
答案 0 :(得分:1)
每次使用此脚本加载页面时,脚本中设置var ai = false
的部分都在运行。尝试使用浏览器localStorage。
var ai = localStorage.getItem('ai-flag') || false;
// before navigating to next page
localStorage.setItem('ai-flag', ai);
或者对于更安全的解决方案,您可以在路由时使用查询参数:
// on load
var ai = /ai=true/.test(location.search);
// on redirect
location.href = 'index.html?ai=' + ai;
第二种解决方案的好处包括能够深度链接到特定的状态!