我不是想让它保存服务器端或任何东西,而只是一次性保存,所以如果刷新页面,数据就会消失。我在这里搜索过,谷歌,找不到任何与我所说的完全相关的东西,但也许我是在寻找错误的东西。
<div id="hs">
<center>Past 10 scores.</center>
<p> 1. <span id="t1">N/A</span></p>
<p> 2. <span id="t2">N/A</span></p>
<p> 3. <span id="t3">N/A</span></p>
<p> 4. <span id="t4">N/A</span></p>
<p> 5. <span id="t5">N/A</span></p>
<p> 6. <span id="t6">N/A</span></p>
<p> 7. <span id="t7">N/A</span></p>
<p> 8. <span id="t8">N/A</span></p>
<p> 9. <span id="t9">N/A</span></p>
<p> 10. <span id="t10">N/A</span></p>
</div>试着让它变成这样,10,9,8,7,6,5,4, 3,2,1,然后把它推下去,保持最新的#1,所以1变成2,2变成3,等等。
我已经尝试了无数的事情,没有任何工作(甚至100%肯定如果js能做我想做的事情,所以这就是我来这里的原因。这是一种速度/反应类型的游戏。如果这能让事情变得更简单的话,我想也许只是让它超过5点。
我不得不“工作”,所以它更新了一个,但当它去更新另一个,它删除了最后一个,使我相当生气。(我在一些编码方面比较新(尤其是代码的整洁)
发布于 2015-07-20 00:05:51
您可以移除HTML元素,并添加如下所示的新元素:
function addHighScore(score) {
var list = document.getElementById("hs").getElementsByTagName("OL")[0];
var items = list.getElementsByTagName("LI");
list.removeChild(items[items.length - 1]);
var newItem = document.createElement("LI");
newItem.innerHTML = score;
list.insertBefore(newItem, items[0]);
}
addHighScore(200);DIV {width: 320px;}
H1 {text-align: center;}<div id="hs">
<h1>Past 10 scores.</h1>
<ol>
<li>100</li>
<li>90</li>
<li>80</li>
<li>70</li>
<li>60</li>
<li>50</li>
<li>40</li>
<li>30</li>
<li>20</li>
<li>10</li>
</ol>
</div>
发布于 2015-07-20 00:29:46
看来我应该介绍一下你的新朋友sessionStorage
sessionStorage就像localStorage一样,但只要浏览器打开,它就会保留信息。
保存到sessionStorage非常容易:
sessionStorage.setItem("key", "value")然后,撤回数据
sessionStorage.getItem("key") // --> "value"所以,一个高分的例子:
function save(score) {
// get the scores
var scores = JSON.parse(sessionStorage.getItem("scores")) || []
// add the scores to the list
scores.push(score)
// sort the scores into the new list
scores = scores.sort().reverse()
// Save inside sessionStorage
sessionStorage.setItem("scores", JSON.stringify(scores))
}https://stackoverflow.com/questions/31505826
复制相似问题