Google setOnloadcallback() 函数与 window.onload 冲突

发布于 2024-11-18 10:42:03 字数 297 浏览 2 评论 0原文

这是我的代码:

window.onload = function(){
  google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(function(){
    alert("Message");
  });
}

我知道如果我将 google load 放在 window.onload 之外,它会起作用。但我希望它位于 window.onload 内。有什么建议吗?

谢谢

here is my code:

window.onload = function(){
  google.load("visualization", "1", {packages:["corechart"]});
  google.setOnLoadCallback(function(){
    alert("Message");
  });
}

I know it will work if I put google load outside window.onload. But I want it to be inside the window.onload. Any suggestions?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时光清浅 2024-11-25 10:42:03

据我所知,Google 加载器正在使用 document.write 将脚本添加到页面。 document.write 仅在窗口完全加载之前起作用,因此您似乎无法在 window.onload 内部使用 google.load 。我建议将您需要的任何代码放入 google.setOnLoadCallback 函数中 - window.onload 在那里工作得很好。

或者,您可以自动加载 Google API,这样就不需要 onLoadCallback(有关更多信息,请参阅文档):

<script type="text/javascript" src="http://www.google.com/jsapi?autoload={modules:[{name:gdata,version:2.x,packages:[blogger]}]}"></script>

另请查看 jQuery 库,因为它具有类似 $(document).ready() 的函数大大改善了 window.onload。

As far as I know, the Google loader is using document.write to add scripts to the page. document.write only works before the window has fully loaded, so it seems you can't use google.load inside of window.onload. I'd recommend putting whatever code you need inside of the google.setOnLoadCallback function - window.onload works fine in there.

Alternatively, you can autoload the Google APIs so that the onLoadCallback is unnecessary like this (see docs for more info):

<script type="text/javascript" src="http://www.google.com/jsapi?autoload={modules:[{name:gdata,version:2.x,packages:[blogger]}]}"></script>

Also check out the jQuery library because it has functions like $(document).ready() that improve greatly on window.onload.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文