1

我的网页中有这两行代码:

    google.load("jquery", "1.7.0");
    google.load("jqueryui", "1.8.16");

我决定升级到新版本:

    google.load("jquery", "1.8.2");
    google.load("jqueryui", "1.9.0");

现在整个页面都中断了。当我通过查看 Sources 选项卡在 Google Chrome 中进行检查时,我看到文件的旧版本在那里。此外,当我查看控制台是否有错误时,我会收到以下错误:

未捕获的错误:模块:未找到版本为“1.8.2”的“jquery”!

未捕获的 ReferenceError:$ 未定义

未捕获的 ReferenceError:未定义 jQuery

未捕获的类型错误:未定义不是函数

注意:此问题不是特定于浏览器的。另外,我过去已经升级,没有任何问题。这里发生了什么。我该如何解决?非常感谢!

4

3 回答 3

3

如果您只使用 google 对象来加载 jQuery,那么您可以直接加载 jQuery 并避免与 google 脚本有关的任何问题

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/jquery-ui.min.js" type="text/javascript"></script>

另外,jquery 1.8 不在 Google Loader 中

如果您直接访问https://www.google.com/jsapi,您将在底部看到所有受支持的版本,并且 1.8.1 不存在。

于 2012-11-19T21:19:22.090 回答
0

尝试查看您的google变量并确保链接与此处列出的链接相似:

https://developers.google.com/speed/libraries/devguide#jquery

于 2012-11-19T21:11:03.360 回答
0

@note Google 的 api/library loader api 自首次发布以来显然发生了一些变化。然后,我们能够 .load('jquery', '1.8') 或 .load('jqueryui', '1.9') 并且仍然获得稳定的边缘版本。现在我们似乎无法指定具有任何可靠性的修订/次要版本 - 只有主要版本,例如。'1' 或精确的例如。'1.8.3'。

@see this page并向下滚动到版本控制以了解详细信息。它详细说明了上述内容并“建议”通过通配符为我们的开发环境请求 api 的“测试版本”,例如。'1.x' 用于促进反馈和早期回归测试。我的两个流行库的测试在这个结构下失败了,虽然该文档需要工作,但这可能仅适用于谷歌(而不是“托管”)库。此外,虽然只请求“1”版本有效,但您只会得到非常过时的版本。

@net 对于托管库,我计划转储 google.load 模式并使用此处记录的 src="" 方法: . Libs 仍然可以通过标签注入异步加载,或者如果更方便的话,只需在需要之前将标签放入其中。然后,虽然谷歌速度更快,但我仍然会用我自己的副本备份这些文件,以防万一——这是推荐的做法。

于 2012-12-25T18:03:12.877 回答