首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript个人“高分”

JavaScript个人“高分”
EN

Stack Overflow用户
提问于 2015-07-19 20:53:45
回答 2查看 183关注 0票数 0

我不是想让它保存服务器端或任何东西,而只是一次性保存,所以如果刷新页面,数据就会消失。我在这里搜索过,谷歌,找不到任何与我所说的完全相关的东西,但也许我是在寻找错误的东西。

代码语言:javascript
复制
<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点。

我不得不“工作”,所以它更新了一个,但当它去更新另一个,它删除了最后一个,使我相当生气。(我在一些编码方面比较新(尤其是代码的整洁)

EN

回答 2

Stack Overflow用户

发布于 2015-07-20 00:05:51

您可以移除HTML元素,并添加如下所示的新元素:

代码语言:javascript
复制
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);
代码语言:javascript
复制
DIV {width: 320px;}
H1 {text-align: center;}
代码语言:javascript
复制
<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>

票数 1
EN

Stack Overflow用户

发布于 2015-07-20 00:29:46

看来我应该介绍一下你的新朋友sessionStorage

sessionStorage就像localStorage一样,但只要浏览器打开,它就会保留信息。

保存到sessionStorage非常容易:

代码语言:javascript
复制
sessionStorage.setItem("key", "value")

然后,撤回数据

代码语言:javascript
复制
sessionStorage.getItem("key") // --> "value"

所以,一个高分的例子:

代码语言:javascript
复制
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))
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31505826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档