开发者问题收集

未捕获的 ReferenceError:$未定义?

2010-01-15
3117671

为什么此代码会抛出

Uncaught ReferenceError: $ is not defined

而之前都是正常的?

$(document).ready(function() {
  $('#tabs > ul').tabs({ fx: { opacity: 'toggle' } });
  $('#featuredvid > ul').tabs();
});

标签中的结果不再关闭。

标题中引用了 jQuery:

<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/sprinkle.js"></script>
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/jquery-1.2.6.min.js"></script>
<script language="JavaScript" type="text/javascript" src="<?php echo get_option('siteurl') ?>/js/jquery-ui-personalized-1.5.2.packed.js"></script>
3个回答

您应该首先引用 jquery 脚本。

<script language="JavaScript" type="text/javascript" src="/js/jquery-1.2.6.min.js"></script>
<script language="JavaScript" type="text/javascript" src="/js/jquery-ui-personalized-1.5.2.packed.js"></script>
<script language="JavaScript" type="text/javascript" src="/js/sprinkle.js"></script>
Jeremy
2010-01-15

您在包含 jQuery JavaScript 之前调用了 ready 函数。请先引用 jQuery。

Open Source
2010-01-15

这就是为我解决问题的方法。最初我去了 Google,并在他们的 CDN 页面上复制并粘贴了他们建议的 jQuery 代码片段:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

该代码片段在 src 属性中不包含 HTTP:HTTPS: ,但我的浏览器 FireFox 需要它,所以我将其更改为: 编辑:这对我也适用于 Google Chrome

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

然后 它起作用了。

Marlin Mixon
2013-03-17