Google Maps et Markermanager jette l'erreur
-
19-09-2019 - |
Question
J'utilise l'API google map avec le MarkerManager . Je charge les 2 bibliothèques javascript par JQuery.
Voici mon Javascript:
function initialize() {
$.getScript('http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/release/src/markermanager.js');
$.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC');
}
function mapLoaded() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(18, -77.4), 13);
map.setUIToDefault();
var mgr = new MarkerManager(map);
mgr.addMarkers(getWeatherMarkers(), 5); //gets some marker from another function
mgr.refresh();
}
}
L'erreur que je reçois dans Firebug javascript est débogueur:
GBounds n'est pas défini [Pause sur cette erreur] GBounds.prototype.containsPoint = function (point) {\ nmarkerma ... 109501758 (ligne 377)
me.getMapGridBounds_ n'est pas une fonction [Pause sur cette erreur] = me.shownBounds_ me.getMapGridBounds _ (); \ n markerma ... 109501758 (ligne 106)
Cette erreur se produit également si je charge statiquement la bibliothèque javascript.
Merci,
La solution
Il y a deux problèmes avec votre code que je vois.
D'abord, vous n'utilisez pas le plus récent verson de MarkerManager. Utilisez le nouveau ici:
http: // gmaps -utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js
En second lieu, la bibliothèque MarkerManager nécessite l'API GoogleMaps à charger en premier.
Commencez par passer l'ordre (je ne pense pas que cela fonctionne):
$.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC');
$.getScript('http://gmaps-utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js');
Mais plus probablement, vous aurez besoin de quelque chose comme ceci:
function initialize() {
$.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC');
}
function mapLoaded() {
$.getScript('http://gmaps-utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js', function(){
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(18, -77.4), 13);
map.setUIToDefault();
var mgr = new MarkerManager(map);
mgr.addMarkers(getWeatherMarkers(), 5); //gets some marker from another function
mgr.refresh();
}
});
}