gpt4 book ai didi

javascript - 在 ajaxComplete 之后加载 javascript

转载 作者:行者123 更新时间:2023-11-30 00:26:01 24 4
gpt4 key购买 nike

我正在尝试通过 AJAX 添加 Google 图表,但在 Firebug 中我得到:

ReferenceError: google is not defined

我发送的 AJAX 看起来像这样:

<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawVisualization);

etc etc...

</script>

我假设第一个脚本没有加载。我将如何解决这个问题?我试过在 ajaxComplete 之后加载,但我无法让它工作。

最佳答案

如果您想等到您的库加载,您可以定期检查它是否已加载,当您检测到它时,您可以执行您的代码。我在这个 answer 上提出了我的解决方案.

添加一个 Javascript 函数来检查:

function whenAvailable(name, callback) {
var interval = 10; // ms
window.setTimeout(function() {
if (window[name]) {
callback(window[name]);
} else {
window.setTimeout(arguments.callee, interval);
}
}, interval);
}

然后添加一个代码来检查您是否加载了 google 并在加载后从内部运行代码

whenAvailable("google", function(t) {
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawVisualization);

etc etc...
});

您可以自定义间隔。这是一个需要了解的有用模式。

关于javascript - 在 ajaxComplete 之后加载 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31382653/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com