Why "Google is not defined" when downloading google js api

I follow the api step by step but cannot download the successful one.

this is my code:

<html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> </head> <body > <script type="text/javascript" src="http://www.google.com/jsapi?autoload=%7B%22modules%22%3A%5B%7B%22name%22%3A%22gdata%22%2C%22version%22%3A%222.x%22%2C%5B%22callback%22%3A%22onLoad%22%2C%22packages%22%3A%5B%22maps%22%5D%5D%7D%5D%7D"></script> <script type="text/javascript"> var service = new google.gdata.maps.MapsService('docs-example'); </script> </body> </html> 

error: google not defined

why??


upedted

I change my code and it worked, but it launches errorHandler and then warns "error !!!":

 <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> </head> <body > <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> // Load the latest version of the Google Data JavaScript Client google.load('gdata', '2.x', {packages: ['maps']}); function onGoogleDataLoad() { // Put your code here } // Call function once the client has loaded google.setOnLoadCallback(onGoogleDataLoad); </script> <script type="text/javascript"> var service = new google.gdata.maps.MapsService('docs-example'); listMaps() function listMaps() { var list = document.createElement('ul'); var mapFeedUrl = 'http://maps.google.com/maps/feeds/maps/default/owned'; service.getMapFeed(mapFeedUrl, function(feedRoot) { var feed = feedRoot.feed; var entries = feed.getEntries(); for (var i = 0; i < entries.length; i++) { var entry = entries[i]; var mapTitle = entry.getTitle().getText(); var listItem = document.createElement('li'); var listText = document.createTextNode(mapTitle); listItem.appendChild(listText); list.appendChild(listItem); } document.body.appendChild(list); }, errorHandler) } function errorHandler(){ alert('error!!!') } </script> </body> </html> 

why?

thanks

+3
source share
2 answers

you must place any call in google stuff inside the onGoogleDataLoad() function to make sure it is not running before the APIs have finished loading.

 function onGoogleDataLoad() { var service = new google.gdata.maps.MapsService('docs-example'); listMaps() } 
+1
source

If you check the JS URL with your browser, you get the following result:

 var error = new Error("Invalid autoload."); error.toString = function() { return this.message; } throw error; 

Meaning, something is wrong with your URL.

0
source

All Articles