0

我不确定为什么,尽管遇到了类似的问题。

尝试使用 webfontloader 从 fonts.com 加载字体,以便在加载函数后调用函数。

<script src="https://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js"></script>
<script>
   WebFont.load({
      monotype: {
        projectId: 'xxxxxxxxxxxxxxxxxxxx'
      },
      active: function() {
         mainNav();
      }
   });

但是当我将它包含在 jsapi 中时

<script src="https://www.google.com/jsapi"></script>

我在控制台中遇到以下问题: Uncaught TypeError: Cannot call method 'hasAttribute' of null

但是,如果单独加载,它们很好...

有任何想法吗?

4

1 回答 1

2

尝试使用以下 url 加载 webfonts api:

<script src="//ajax.googleapis.com/ajax/libs/webfont/1.1.2/webfont.js"></script>

查看以下帖子了解更多详情:https ://groups.google.com/forum/#!msg/google-ajax-search-api/dWVzQF_YWCM/Y3-R738wh78J

我们不再支持新版本库的部分版本别名。任何已经存在的部分版本别名将继续得到支持和更新。原因是像 https://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js这样的 URL 这就是说“给我最新版本的 jquery 1.xx)具有非常短的缓存生命周期,因为最新版本可以随时更改。这对性能不利。这对您的网站也不利,如果库在版本之间对其 API 进行重大更改,导致您的页面突然呈现不同。库通常不会有意进行此类更改,但页面有时取决于 API 的未指定极端情况的行为,可能有意或无意地更改为图书馆已更新。

因此,我们强烈建议您在引用托管在 Google AJAX API 上的库时指定完整的版本字符串。您始终可以在https://developers.google.com/speed/libraries/devguide找到最新版本 。在这种情况下,最新的 1.9.x 版本当前是 1.9.1,因此我们建议使用 URL https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js 来获得稳定的版本和更好的缓存。

(此外,您上面的示例没有结束</script>标记。只是想验证这在您自己的代码中不存在)。

于 2013-01-25T22:05:23.827 回答