2014-10-22 71 views
0

所以即时尝试创建一个简单的游戏,如果用户得到正确答案,FlipClock.js将停止并记录用户采取正确答案的时间。FlipClock.js在if语句为true时停止

我有很多麻烦,因为即时新手使用JavaScript,我不知道如何调用fucntions停止时钟。任何帮助将非常感激。

当我运行这个时,我得到一个错误,说Uncaught TypeError:无法读取控制台窗口中未定义的属性'stop'。

这是我的代码:

<script type="text/javascript"> 
     var clock; 

     $(document).ready(function() { 
      var clock; 

      clock = $('.clock').FlipClock(180, { 
       clockFace: 'MinuteCounter', 
       countdown: true, 
       callbacks: { 
        stop: function() { 
         $('.message').html('Game Over!') 
        } 
       } 
      }); 

     }); 
    </script> 



    <h1>LATEHENP</h1> <!-- ELEPHANT --> 



<form id="inputForm"> 
<p> 
<label for="userAnswer">Answer:</label> 
<input id="userAsnwer" type="text" name="userAnswer" autocomplete="off" maxlength="8"/> 
</p> 
<input type="button" value="Submit" id="loginBtn"/> 
</form> 

<script type="text/javascript"> 



function process(){ 
    console.log("working"); 
     if(inputForm.userAnswer.value.toLowerCase()==="elephant") 
    { //Correct 
    document.getElementById("message2").innerHTML = "Well done!"; 
     clock.stop(); 
     var time = clock.getTime(); 
     console.log("time"); 

    } 
    else 
    { 
     //Incorrect 
    document.getElementById("message2").innerHTML = "Incorrect! <a href='javascript:location.reload(true)'>Retry?</a> "; 
    } 
}; 


var btn = document.getElementById("loginBtn"); 
btn.addEventListener("click", process, false); 

</script> 

回答

0

它看起来像你想定义的选项区域停止方法。

我将定义设置var时钟片段外的clock.stop作为时钟对象的实例化。然后在页面提交后触发process()函数。