如何在JS页面之间存储一些信息?
我的webapp使用sql查询来填充几页,这些查询通常会返回相同的结果。有没有办法将此结果存储在JS变量中,并仅在某些事件中强制使用sql查询进行刷新?
这与SQL查询的效率如何?与饼干?
答案 0 :(得分:5)
您可以尝试Local Storage.
function supportsLocalStorage() {
try {
return 'localStorage' in window && window['localStorage'] !== null;
} catch (e) {
return false;
}
}
function saveGameState() {
if (!supportsLocalStorage()) { return false; }
localStorage["halma.game.in.progress"] = gGameInProgress;
for (var i = 0; i < kNumPieces; i++) {
localStorage["halma.piece." + i + ".row"] = gPieces[i].row;
localStorage["halma.piece." + i + ".column"] = gPieces[i].column;
}
localStorage["halma.selectedpiece"] = gSelectedPieceIndex;
localStorage["halma.selectedpiecehasmoved"] = gSelectedPieceHasMoved;
localStorage["halma.movecount"] = gMoveCount;
return true;
}
答案 1 :(得分:0)
您也可以按照single page web app模式使用Ajax,查看backbone.js以获取更多信息
如果你走得更远,你可以查找Meteor这样的框架,只有在有变化时才设置推送更新到客户端(有其他方法,但我喜欢meteor如何做)