Google setOnloadcallback () столкновение функции с window.onload - PullRequest
1 голос
/ 06 июля 2011

вот мой код:

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

Я знаю, что это сработает, если я добавлю Google load за пределами window.onload.Но я хочу, чтобы это было внутри окна.Есть предложения?

Спасибо

1 Ответ

1 голос
/ 09 октября 2011

Насколько я знаю, загрузчик Google использует document.write для добавления скриптов на страницу.document.write работает только до полной загрузки окна, поэтому вы не можете использовать google.load внутри window.onload.Я бы порекомендовал поместить любой необходимый код в функцию google.setOnLoadCallback - там прекрасно работает window.onload.

В качестве альтернативы, вы можете автоматически загружать API Google, так что 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.

...