2014-04-30 4 views
1

이미지와 단어를 보여주는 간단한 코드가 있으므로 필드를 완성해야합니다. 단어를 올바르게 작성하면 축하 팝업이 나타납니다.함수 내에서 jQuery가 정의되지 않았습니다.

임의의 이미지를 표시하기 위해 array의 항목을 무작위로 추출하는 방법을 알 수있었습니다. 이제 각각의 keyup이 임의의 단어와 일치하는지 확인하고 싶습니다.

IF 성명서에 문제가있는 것 같습니다. 제거하면 팝업이 완벽하게 작동하기 때문입니다.

오류 :

uncaught typeerror undefined is not a function

코드 :

당신이 할 수 있도록, input 요소의 값을 얻기 위해 대신 .value().val()를 사용할 필요가
<html> 
    <head> 
    <title>AutistApp</title> 
    <link rel="stylesheet" type="text/css" href="css/style.css"> 
    <script src="js/jquery.min.js"></script> 
    </head> 

    <body> 
     <div id="container"> 

     <div class="eval">CORRECTO</div> 
     <div class="siguiente"><a href=".">&iexcl;OTRA VEZ!</a></div> 

     <div class="dibujo"><img id="dibujito" src="img/apple.png" /></div> 
     <div class="palabra">MANZANA</div> 
     <div class="respuesta"><input type="text" id="resp" name="resp" value=""/> 
     </div> 
    </div> 

<script type="text/javascript"> 

/***** RANDOM VALUES *****/ 
var messages = ["manzana", "pera", "banana"], 
    message = messages[Math.floor(Math.random() * messages.length)]; 

$('.palabra').text(message); 
$('#dibujito').attr('src','img/'+message+'.png'); 

/***** KEYDOWN CHECK *****/ 
$(document).ready(function(){ 
    $('#resp').keyup(function(){ 
     if ($("#resp").value() == message) { 
      $('.eval').slideDown(); 
      $('.eval').delay(3000).fadeOut(); 
      $('.siguiente').delay(3000).slideDown(); 
     } 
    }); 
}); 

</script> 
</body> 
</html> 
+1

jQuery에는'value()'메소드가 없으며,'val()'입니다. – Barmar

답변

2

:

if ($("#resp").val() == message) { 

는 대신 다음과 같은 경우 상태

$("#resp").val() 

를 사용할 필요가

$(document).ready(function() { 
    var messages = ["manzana", "pera", "banana"], 
     message = messages[Math.floor(Math.random() * messages.length)]; 

    $('.palabra').text(message); 
    $('#dibujito').attr('src', 'img/' + message + '.png'); 

    $('#resp').keyup(function() { 
     if ($("#resp").val() == message) { 
      $('.eval').slideDown(); 
      $('.eval').delay(3000).fadeOut(); 
      $('.siguiente').delay(3000).slideDown(); 
     } 
    }); 
}); 
+0

mg! 2 글자 XD 고마워요! awesome – KUMO

2

밥상을 :

if ($("#resp").value() == message) { 

또한 DOM 준비 처리기 내부에 모든 코드를 포장해야합니다.

+0

감사합니다 Aniket! 그것은 일했다 – KUMO

+0

Kumo 대환영. – Aniket

관련 문제