3 Stimmen

warum "google ist nicht definiert" wenn ich google js api lade

Ich verfolge die api Schritt für Schritt, aber kann nicht erfolgreich laden

Dies ist mein 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>

die Fehlermeldung lautet :google ist nicht definiert

Warum?


upeded

Ich habe meinen Code geändert, und es hat funktioniert, aber es feuert den errorHandler und meldet dann "Fehler!!!":

<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>

Warum?

danke

0 Stimmen

1voto

w00kie Punkte 301

Sollten Sie jeden Aufruf der Google-Sachen innerhalb der onGoogleDataLoad() Funktion, um sicherzustellen, dass sie nicht gestartet wird, bevor die APIs fertig geladen sind.

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

0voto

Tatu Ulmanen Punkte 119424

Wenn Sie die JS-URL mit Ihrem Browser überprüfen, erhalten Sie das folgende Ergebnis:

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

Das bedeutet, dass mit Ihrer URL etwas nicht stimmt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X