我的网页上有这两行代码:
google.load("jquery", "1.7.0");
google.load("jqueryui", "1.8.16");
我决定升级到新版本:
google.load("jquery", "1.8.2");
google.load("jqueryui", "1.9.0");
现在整个页面都破了。当我通过查看“源”选项卡在Google Chrome中进行检查时,我发现文件的旧版本存在。另外,当我看到控制台出错时,我得到了这些错误:
未捕获错误:模块:找不到版本为“1.8.2”的'jquery'!
未捕获的ReferenceError:$未定义
未捕获的ReferenceError:未定义jQuery
未捕获的TypeError:undefined不是函数
注意:此问题不是特定于浏览器的。此外,我在过去升级了没有问题。这里发生了什么。我该如何解决?非常感谢!
答案 0 :(得分: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不存在。
答案 1 :(得分:0)
尝试查看您的google
变量并确保链接类似于此处列出的链接:
https://developers.google.com/speed/libraries/devguide#jquery
答案 2 :(得分:0)
@note谷歌的api / library loader api自首次发布以来有所改变。 然后,我们能够.load('jquery','1.8')或.load('jqueryui','1.9')仍然可以获得稳定的边缘释放。现在我们似乎无法指定具有任何可靠性的修订版/次要版本 - 仅限主要版本。 '1'或确切的例如。 '1.8.3'。
@see this page并向下滚动到版本控制以获取具体信息。它详细说明了上述内容,并“建议”通过通配符为我们的开发环境请求api的“测试版本”,例如。 '1.x'以促进反馈和基本上早期的回归测试。我的测试w /两个流行的库失败了这个结构,虽然该文档需要工作,这可能只适用于谷歌(而不是'托管')库。此外,虽然只请求“1”版本,但您只能获得非常过时的版本。
@net对于托管库,我打算转储google.load模式并使用src =“”方法记录here:。 Libs仍然可以通过标记注入加载异步,或者只是在需要之前删除标记,如果更方便的话。然后,虽然从谷歌更快,我仍然会支持这些与我自己的副本加载以防万一 - 建议的做法。