JürgenB: Google Maps API dynamisch nachladen

Beitrag lesen

Hallo,

mit folgendem Code lade ich die Google Maps API dynamisch nach:

  
JB.LoadScript = function(url,callback) {  
  var scr = document.createElement('script');  
  scr.type = "text/javascript";  
  scr.async = "async";  
  if(typeof(callback)=="function") {  
    scr.onloadDone = false;  
    scr.onload = function() {  
      if ( ! scr.onloadDone ) {  
        scr.onloadDone = true;  
        JB.Debug_Info(url,"loaded",false);  
        callback();  
      }  
    };  
    scr.onreadystatechange = function() {  
      if ( ( "loaded" === scr.readyState || "complete" === scr.readyState ) && ! scr.onloadDone ) {  
        scr.onloadDone = true;  
        JB.Debug_Info(url,"ready",false);  
        callback();  
      }  
    }  
  }  
  scr.src = url;  
  document.getElementsByTagName('head')[0].appendChild(scr);  
} // LoadScript  
  
JB.gmcb = function() {  
  JB.Scripte.googlemaps = 2;  
  JB.map_prepared[0] = 2;  
  JB.Debug_Info("Start","http://maps.google.com/maps/api/js?sensor=false&callback=JB.gmcb geladen",false);  
}  
JB.LoadScript("http://maps.google.com/maps/api/js?sensor=false&callback=JB.gmcb", function() {});  

Das funktioniert im IE8, FF, Safari und im Chrome. Nur beim Opera (11.62) feuert zwar der onload im Script-Element, aber die Callbackfunktion von Google wird nicht aufgerufen.

Hat jemand von euch eine Idee, woran das liegen könnte?

Gruß, Jürgen

PS Wo hat der Opera eigentlich seine Entwicklertools bzw. die Javascriptkonsole?