0

可能重复:
jQuery 甚至没有被调用

有趣的是,在 jsfiddle 上,如果我从左侧面板中选择最新的 jQuery 选项,它会完美运行。该网站基本上是一个运行此菜单功能的测试页面。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/

4

1 回答 1

4

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

将您的代码放在正文的末尾或通过将其更改为使用准备好的回调

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

编写$(function(){ somecode });要求 jQuerysomecode在 DOM 准备好时执行。

于 2013-01-12T19:15:29.600 回答