簡體   English   中英

如何知道用戶是否已完成所有任務?

[英]How to know if user has completed all tasks?

我正在制作僅使用HTML,JavaScript和CSS的應用程序,並為孩子們准備了一些小游戲(例如拼圖,訂購單詞,繪畫和繪畫...)。 我有索引頁面,該頁面具有指向每個游戲頁面的鏈接,一旦游戲結束,它將直接重定向到索引頁面,所有頁面都位於同一瀏覽器選項卡中。

我想知道的是,如果有某種方式可以知道玩家何時完成了一場游戲,那么此后,游戲將被鎖定,並且一旦玩家完成了所有游戲,它將解鎖特別獎品或某種東西。

我嘗試使用本地存儲,但是問題是,一旦我玩了一個游戲,它將保持鎖定狀態,因為即使關閉瀏覽器,本地存儲也會保留我玩過的內存。 關閉瀏覽器后,是否可以使用本地存儲“丟失其內存”? 還是有比本地存儲更有效的方法?

任何幫助將非常感激!

您可以使用SessionStorage 根據定義,“它保留在同一選項卡中”,這意味着一旦關閉頁面,存儲就會丟失。

參考: https//code.google.com/p/sessionstorage/

舉個例子,你可以遵循這個,我希望它可以幫助你...

<!DOCTYPE html>
<html>
<body>

<div id="result"></div>

<script>
// Check browser support
if (typeof(Storage) != "undefined") {
    // Store
    localStorage.setItem("lastname", "Smith");
    // Retrieve
    document.getElementById("result").innerHTML = localStorage.getItem("lastname");
} else {
    document.getElementById("result").innerHTML = "Sorry, your browser does not support Web Storage...";
}
</script>

</body>
</html>

嘗試谷歌sessionsage為HTML,有很多例子..祝你好運!

給您的好書: http : //www.smashingmagazine.com/2010/10/11/local-storage-and-how-to-use-it/

關於本地存儲,您可以執行以下操作:

加載頁面后,設置您的本地存儲並將所有游戲設置為incomplete

創建一個store()check()函數來幫助您並使事情變得更輕松

function store(game, status){
    localStorage.setItem(game, status);
}
function check(game){
    return localStorage.getItem(game);
}

window.onload = function() {
    store("puzzle1", false);
    store("puzzle2", false);
    store("puzzle3", false);
}

當用戶完成游戲時,您可以更改存儲中的數據:

someEvent() {
    store("puzzle1", true);
}

然后在游戲結束時或在游戲開始頁面上運行一些檢查:

//if puzzle1 is true
if(check("puzzle1")) {
     //do Stuff
}

我相信這應該為您工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM