簡體   English   中英

布爾變量未聲明?

[英]Boolean variable not declaring?

用HTML5,CSS和JavaScript重寫用Unity編寫的程序有點棘手。 現在讓我很isGame一件事是,我創建了一個名為isGame的變量,其值為truefalse

該代碼最初將其值設置為false ,並且在某些頁面上(通過具有數字值的pageNumber變量進行pageNumber處理)應該將其設置為false 不知道我輸入錯了什么或什么,但是沒有用。

這是代碼:

function setContent() {
  if (pageNumber == 1) {
    var isGame = false;
    document.getElementById("ng_audiocontainer").innerHTML = '<audio autoplay="autoplay"><source id="ng_intro" src="audio/example"></audio>';
    currentAudio = document.getElementById("ng_intro");
    document.getElementById("ng_body").innerHTML = '<img src="images/example.png" id="ng_logo">';
    document.getElementById("ng_lipsbutton").style.display = "none";
  }
}

如您所見, setContent()函數用內容填充HTML塊,並自動播放音頻。 它基本上是一種交互式學習工具,帶有向左和向右箭頭。 右邊遞增並調用setContent() ,左邊遞減並調用setContent() ,以創建一種由貧民窟操縱的分頁。

我唯一遇到的問題是, isGame變量未聲明為falsetrue ,而只是保留我最初在腳本頂部聲明的內容。 這沒有任何意義,因為我寫的與寫頁碼的寫法相同。 救命?

抱歉,如果這是TLDR,則不確定如何總結。


編輯:

這里有更多細節。 在腳本的最頂部(順便說一下,這是內部的,因為它基本上將被粘貼到網站HTML中),我將pageNumber聲明為0並將isGamefalse

var pageNumber = 0;
var isGame = false;

function setContent() {

以下當然是上面的功能。 當某些東西被點擊時, isGame被調用,有些東西是“錯誤”,有些是“正確”,但是當isGame == true時,我只希望它們能夠對被點擊做出反應。 這是代碼:

function rightLetter() {
  if (isGame == true) { 
    pageNumber++;
    setContent(); 
  }    

每次調用該函數時,都將覆蓋isGame var。 嘗試這個:

var isGame = false; // Declare your boolean var first

function setContent() {

    if (pageNumber == 1) {

        isGame = true; // Update your var here, to true or false
        document.getElementById("ng_audiocontainer").innerHTML = '<audio autoplay="autoplay"><source id="ng_intro" src="audio/example"></audio>';
        currentAudio = document.getElementById("ng_intro");
        document.getElementById("ng_body").innerHTML = '<img src="images/example.png" id="ng_logo">';
        document.getElementById("ng_lipsbutton").style.display = "none";

    }
}

暫無
暫無

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

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