2012-07-08 35 views
0

我創建了一個基於我在網上找到的jQuery代碼的hang子手。我理解代碼的工作原理,如果我只想使用一個單詞,它就能完美工作。我想用多個單詞來使用遊戲,所以我創建了一個函數,以便這樣做。 不幸的是,它不起作用。Hang子手jQuery功能

這是我所創建的函數:

function hangman(var word) 
     { 
      var alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; 
      $.each(alpha.split(''), function(i, val){ 
      $('#alpha').append($('<span class="guess">' + val + '</span>')); 
      }); 
      $.each(word.split(''), function(i, val){ 
      $('#word').append($('<span class="letter" letter="' + val +'">_</span>')); 
      }); 
      $('.guess').click(function(){ 
      var count = $('#word [letter='+$(this).text()+']').each(function(){ $(this).text($(this).attr('letter'));}).length; 
      $(this).removeClass('guess').css('color' , (count > 0 ? 'green' : 'red')).unbind('click'); 
      }); 
     } 

     $(document).ready(function() { 
     $('#BUT').click(function() { 
      hangman('DOG'); 
       }); 
      }); 

,這是我的HTML:

<div id="hangman-jquery"> 
    <div id="word"></div> 
    <div id="alpha"></div> 
</div> 
<button id= "BUT" ></button> 

正如我所說,這是行不通的。你有任何機會知道解決方案嗎?

+0

*如何*不工作?你有什麼跡象表明它失敗了?解釋預期的行爲與觀察到的行爲。當你調試代碼時,這些行爲在什麼時候分歧?當時什麼是相關的運行時間值? 「它不起作用」不是有用的信息。 – David 2012-07-08 08:33:05

+0

爲了能寫javascript/jquery,你需要firebug控制檯。它不工作是最可能的錯誤:)。向我們解釋! – Samson 2012-07-08 08:33:07

+0

好吧,你可以製作一系列可以選擇的字符列表,然後刪除它,如果已經選擇了某些東西? – 2012-07-08 08:33:33

回答

3
function hangman(var word) 
//    ^try removing 'var' 

似乎以某種方式工作,那麼:http://jsfiddle.net/BdkTC/

+1

非常感謝,該網站也非常有用。 – 2012-07-08 08:47:47