javascript - google.load 自定义 js

标签 javascript ajax google-ajax-api

我正在使用 google ajax api 如何加载依赖于 ajaxapi 加载的库的自定义 js?

最佳答案

您可以定义一个函数,将脚本对象插入到 DOM 中

<script type="text/javascript">
function loadMyCustomJavaScript() {
    var script = document.createElement("script");
    script.src = "http://www.example.org/my.js";
    script.type = "text/javascript";
   document.getElementsByTagName("head")[0].appendChild(script);
}
</script>

并将其用作 google.setOnLoadCallback

<script src="http://www.google.com/jsapi?key=ABCDEFG" type="text/javascript"></script>
<script type="text/javascript">
    google.load("jquery", "1");
    google.setOnLoadCallback(loadMyCustomJavaScript);
</script>

或者,如果您想使用您加载的特定 Google 库加载它,作为该方法的回调,即。

<script src="http://www.google.com/jsapi?key=ABCDEFG" type="text/javascript"></script>
<script type="text/javascript">
  google.load("maps", "2");
  google.load("search", "1", {"callback" : loadMyCustomJavaScript});
</script>

更新:根据您的评论,您可以尝试使用 jQuery.getScript它为(外部)加载的 JavaScript 代码提供回调函数。根据HubLog: Google, jQuery and plugin loading ,您可能必须使用 window.setTimeout 来延迟函数的执行,直到脚本已被评估。

由于 jQuery 及其插件可能是异步加载的,您可能需要使用不显眼的 JavaScript,而不是直接在 HTML 代码中使用 jQuery/插件函数。

关于javascript - google.load 自定义 js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2705994/

相关文章:

javascript - 估计搜索结果数 Google search API

javascript - 使用递归实现 getElementsByClassName

javascript - 如何从许多其他输入中找到触发 keydown 事件的特定输入框

javascript - 如何连接 2 个切片数组?

JavaScript - 在循环中创建div数量

javascript - 如何使用 php、AJAX 或 MySQL 使删除按钮完全发挥作用并具有正确的 ID?

javascript - ajax 单击禁用提交按钮并再次启用

javascript - 防止表单在提交时刷新 - Ajax Call Angular JS