我正在使用google ajax api 如何加载依赖于 ajaxapi 加载的库的自定义 js?
问问题
490 次
1 回答
2
您可以定义一个将脚本对象插入 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>
更新:根据您的评论,您可以尝试使用为(外部)加载的 JavaScript 代码提供回调函数的jQuery.getScript 。根据HubLog:Google、jQuery 和插件加载,您可能不得不使用window.setTimeout
延迟函数的执行,直到脚本具有/具有 eval'd。
由于 jQuery 及其插件可能是异步加载的,因此您可能需要使用不显眼的 JavaScript,而不是直接在 HTML 代码中使用 jQuery/插件函数。
于 2010-04-24T20:42:16.693 回答