为什么jQuery不能在我的网站上运行?

时间:2013-01-12 19:14:18

标签: php javascript jquery html slidetoggle

  

可能重复:
  jQuery not even being called

有趣的是,如果我从左侧面板中选择最新的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/

1 个答案:

答案 0 :(得分:4)

这是因为执行脚本时没有a.expand元素,因为元素是在之后声明的。

将代码放在正文末尾,或使用a ready callback将其更改为

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

$(function(){ somecode });要求jQuery在DOM准备就绪时执行somecode