页面之间的HTML5本地存储

时间:2015-04-21 16:26:47

标签: javascript html5 local-storage

所以我是HTML5 / JS编程领域的新手,但我真的很想快速学习......我希望建立一个像Jeopardy游戏一样的网站,主屏幕上有一个类别表和点值,点击时,将超链接到问题页面。 在主页上我想要跟踪积分。我有一个文本框,编码为:

<input type="number" id="SamTotalPoint" value="0" readonly="readonly"/>

在问题页面上,我已经放置了理想情况下使用本地存储将点添加到主页的按钮。该按钮编码为:

<input type="button" id="SamHist50" value="Team Sam" onclick="SamScoreKeeper(samPoint,50)"/>

现在我想要连接两者。在外部JS上,我尝试将函数定义为:

   function SamScoreKeeper(samPoint,pointsToAdd)
{
    window.localStorage.setItem("SamTotalPoint", "0");
    var SamOldScore = parseInt(window.localStorage.getItem("SamTotalPoint"));
    window.alert(samPoint);
    window.alert(pointsToAdd);
    samPoint = samPoint + pointsToAdd
    var SamNewScore = samPoint;
    var SamTotalv = SamOldScore + SamNewScore
    window.alert(samPoint);
    window.history.back();
    document.getElementById("SamTotalPoint").value; = SamTotalv;
}

我把那个根本不起作用。我花了一段时间试图研究这个并更多地理解它,但是经过大约6-7个小时的战斗并观看了一堆教程,我仍然无法得到它。这个页面只是从闪存驱动器本地运行,而不是实际托管在服务器上,这就是为什么我希望本地存储可以解决问题而不是使用PHP。窗口警报就在那里,所以我可以确保JS正在进行算术运算。任何人都可以帮我吗?非常感谢!

1 个答案:

答案 0 :(得分:2)

修改 localStorage 后,将在共享存储的所有其他页面上触发storage事件。您只需处理该事件,并检索更新的数据。这也适用于 sessionStorage

document.addEventListener('storage', function(e) {
    // don't forget to take a look at the parameter - event object
    // update your page here, good luck
}, false);