2013-01-12 4 views
0

가능한 중복 :
jQuery not even being called내 사이트에서 jQuery가 작동하지 않는 이유는 무엇입니까?

재미있는 것은 내가 왼쪽 패널의 최신 jQuery를 옵션을 선택하는 경우가 완벽하게 작동 jsfiddle에있다. 웹 사이트는 기본적으로이 메뉴 기능을 실행하는 테스트 페이지입니다. HTML :

<script src="http://code.jquery.com/jquery.min.js"></script> 
<script> 
    $('a.expand').hover(function() { 
    $('#Menu').slideToggle(); 
}); 



</script> 
<a href="" class="expand"> 
<p>hello!</p> 
</a> 
<div id="Menu"> 
wowtest 
</div> 

도움이된다면 PHP 파일입니다.

jsfiddle : http://jsfiddle.net/txeD9/ 요소가 이후에 선언 된대로 스크립트를 실행 더 a.expand 요소가 없기 때문이다

답변

4

.

은 신체의 끝 부분에 코드를 넣어 또는 $(function(){ somecode });은 DOM이 준비가되면 jQuery를이 somecode를 실행하라는 메시지 작성

<script> 
    $(function(){ 
    $('a.expand').hover(function() { 
     $('#Menu').slideToggle(); 
    }); 
    }); 
</script> 

로 변경하여 a ready callback을 사용합니다.

+0

가되지 않습니다 </body> 후 넣어 또는 하나를 사용하고 있으므로

<script src="http://code.jquery.com/jquery.min.js"></script> 

그러나이 선이 페이지가로드 된 후 실행해야하는 <head> 태그 안에 있어야합니다 a.expand와 관련된 클래스 속성? 그리고 ok는 시도 할 것입니다 – bnynn

+1

스크립트를 실행할 때 DOM (페이지의 요소)이 아직 나타나지 않는 것이 문제입니다. –

+0

감사! 그것을 사용할 준비 콜백을 사용! 그리고 미래에 많은 도움이 될 정보에 대해 감사드립니다. – bnynn

0

이 줄은

$(window).load(function(){ 
//your code 
}); 
관련 문제