为什么这段代码会抛出

未捕获引用错误:未定义$

以前什么时候还好?

$(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>

当前回答

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript" src="local_xxx.js"></script>

我也有类似的问题,你知道吗,这是因为当我在android设备webview中测试时,网络断开了,我没有意识到这一点,而本地js加载没有问题,因为它不需要网络。这看起来很可笑,但我花了1个小时才弄清楚。

其他回答

我遇到了完全相同的问题,上面的这些解决方案都没有帮助。然而,我只是将.css文件链接到.js文件之后,问题奇迹般地消失了。希望这有帮助。

如果是wordpress,可能需要更改

$(document).ready(function() {

to

jQuery(document).ready(function($){

或添加

var $ = jQuery;

之前

$(document).ready(function() {

这就是我解决这个问题的原因。最初我去了谷歌,复制并粘贴了他们建议的jQuery片段到他们的CDN页面上:

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

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

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

然后它奏效了。

您应该首先引用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>

如果存在网络问题,也可能发生这种情况。这意味着,即使“jquery脚本”已到位,并且在使用之前已包含,但由于在加载页面时无法访问jquery脚本,因此“$”的定义被视为“未定义的引用”。

出于测试/调试目的::您可以尝试访问浏览器上的“jquery脚本”url。如果它是可访问的,您的页面应该正确加载,否则它将显示所述错误(或其他脚本相关错误)。示例-http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js应该可以在浏览器(或浏览器上下文实例)上访问。

我也遇到过类似的问题,我可以在windows主机浏览器中加载html页面(使用脚本),但无法在vmubuntu中加载。解决网络问题,解决问题。