2016-08-10 95 views
1

我正在做一個hang子手遊戲,並已經與HTML,CSS和JS難住。我有以下的底部部分被觸發,一旦按下按鈕,函數中的b將決定從數組中選擇哪個字母(即0,1 = alpha [1 - 1]),頂部一旦有被某種詞彙輸入。當我嘗試使用上面的變量來檢查所選的字母是否在輸入字符串中時,我遇到了問題。比如當我做console.log(store,input)時。它會以不明身份出現,我只是需要它,所以我可以通過字符串運行字母,然後檢查字母是否在單詞中。我是一個初學者,所以我希望這不是太麻煩了,謝謝不明身份的變量的麻煩

<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <script type="text/javascript" src="hang.js"></script> 
 
     <link rel="stylesheet" href="hang.css" type="text/css" /> 
 
    </head> 
 
     <body> 
 
      <div class="push"> 
 
       <input type="string" placeholder="What is your word ?" id="input"> 
 
       <input type="button" onclick="word(1,0)" value=Submit> 
 
      </div> 
 
       <h2 class="output"></h2> 
 
        <div class="alpha"> 
 
         <h1 onclick="word(0,1)">A</h1> 
 
         <h1 onclick="word(0,2)">B</h1> 
 
         <h1 onclick="word(0,3)">C</h1> 
 
         <h1 onclick="word(0,4)">D</h1> 
 
         <h1 onclick="word(0,5)">E</h1> 
 
         <h1 onclick="word(0,6)">F</h1> 
 
         <h1 onclick="word(0,7)">G</h1> 
 
         <h1 onclick="word(0,8)">H</h1> 
 
         <h1 onclick="word(0,9)">I</h1> 
 
         <h1 onclick="word(0,10)">J</h1> 
 
         <h1 onclick="word(0,11)">K</h1> 
 
         <h1 onclick="word(0,12)">L</h1> 
 
         <h1 onclick="word(0,13)">M</h1> 
 
         <h1 onclick="word(0,14)">N</h1> 
 
         <h1 onclick="word(0,15)">O</h1> 
 
         <h1 onclick="word(0,16)">P</h1> 
 
         <h1 onclick="word(0,17)">Q</h1> 
 
         <h1 onclick="word(0,18)">R</h1> 
 
         <h1 onclick="word(0,19)">S</h1> 
 
         <h1 onclick="word(0,20)">T</h1> 
 
         <h1 onclick="word(0,21)">U</h1> 
 
         <h1 onclick="word(0,22)">V</h1> 
 
         <h1 onclick="word(0,23)">W</h1> 
 
         <h1 onclick="word(0,24)">X</h1> 
 
         <h1 onclick="word(0,25)">Y</h1> 
 
         <h1 onclick="word(0,26)">Z</h1> 
 
         <h1 onclick="word(0,27)">_</h1> 
 
         <h1 onclick="word(0,28)">-</h1> 
 
        </div> 
 
     </body>  
 
</html>

var alpha = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', ' ', '-']; 
 
// -------------------- changes and counts word into spaces 
 

 
function word(a, b) { 
 
    if (a === 1) { 
 
     var input = document.getElementById('input').value; 
 
     input = input.toLowerCase(); 
 
     var store = []; 
 

 
     for (var i = 0; i < input.length; i++) { 
 
      store.push('_'); 
 
     } 
 
     document.getElementsByClassName('output')[0].innerHTML = store; 
 
     document.getElementById('input').value = ''; 
 
    } // -------------------------- checking if letter chosen is correct 
 
    else if (a === 0) { 
 
     console.log(store, input); 
 
    } 
 
}

+0

爲什麼字(a,b)從不使用b –

+0

究竟是什麼不起作用?這個東西究竟該如何工作?您可以[編輯]您的問題,並擴展該片段以包含HTML以及澄清您的問題。 – Xufox

+0

嘗試使用array = string.split(「」)來獲取單詞作爲數組 –

回答

0

在你卡住的地方香港專業教育學院爲你寫了完整的腳本的情況:

var secret=""; 
var letters=[]; 
var known=[]; 
function setsecret(a){ 
secret=a; 
letters=secret.split(""); 
for(i=0;i<letters.length;i++){ 
known.push("_"); 
} 
//display known 
} 
function check(letter){ 
for(i=0;i<letters.length;i++){ 
if(letters[i]==letter){ 
known[i]=letters[i]; 
} 
} 
if(letters==known){ 
alert("youve got it"); 
} 
//display known 
} 

祕密商店這個單詞,字母詞作爲數組,知道猜測詞。像這樣使用:

setsecret("ABRACADABRA"); 
check("A"); 
1

也許使變量「專賣店」全球性的,因此它贏得了」下次你叫word()的時候不要空。同時移動輸入初始化「如果」外塊:

var alpha = ['a', 'b', ...]; 
var store = []; 

function word(){ 
    var input = document.getElementById('input').value; 
    if (a === 1) { 
    ... 
    } 
}