2012-07-08 55 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