本地存储在使用 js 和 html5 的游戏中无法正常工作

Posted

技术标签:

【中文标题】本地存储在使用 js 和 html5 的游戏中无法正常工作【英文标题】:local Storage not working properly in game using js and html5 【发布时间】:2013-11-30 02:48:35 【问题描述】:
<!DOCTYPE>
  <html>
   <script>
    var cash = 1;
    function start()
         setInterval('add()',1000)
      


 function add()
   cash = cash + 1;
   localStorage.setItem('cash',cash)
  document.getElementById('cash').innerHTML = cash;

  

  function save()
   localStorage.setItem('cash',cash);

   

  function load()
  cash = localStorage.getItem('cash');

  
  </script>

 <body onLoad="start()">
<p id="lvl">lvl</p>
<p id="cash">cash</p>
<button type="button" onClick="add()">clickMe</button>
<button type="button" onClick="save()">Save</button>
<button type="button" onClick="load()">load</button>
 </body>
  </html>

当我单击保存然后加载时,它总是显示为 4111,并且 1 继续运行,只是在 jsfiddle.net 上对其进行测试,因为我无法解释它。但我想要它做的是在保存时存储用户当前的现金,然后在单击加载按钮时带回他/她之前拥有的用户现金并继续计数。

【问题讨论】:

【参考方案1】:

你可以试试这个,

 cash = parseInt(cash,10) + 1;

而不是,

cash = cash + 1;

参考:

window.localStorage.setItem("key", "value");

参考:http://www.mosync.com/files/imports/doxygen/latest/html5/localstorage.md.html

【讨论】:

哇,您修复了故障。而且我刚刚解决了保存问题,所以现在我可以继续编写代码了:D 非常感谢。

以上是关于本地存储在使用 js 和 html5 的游戏中无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 和 Cocos2d-js 的cc.sys.localStorage本地存储到哪里了?

WKWebView 加载使用 sea.js 和 avalon 的本地 html5 项目

运用html5+css3+jq+js实现添加的数据放入本地存储和界面

[html5]localStorage的原理和HTML5本地存储安全性

Safari 中的 html5 地理定位错误

无法连接到本地 Node.js 安全 WebSocketServer