2010-06-05 6 views
0

 Google Maps Api v2 erreur

var mymarkers= []; //array 

function createMarker(point,html,ref){ 
    var marker = new GMarker(point); 
    mymarkers[ref] = marker; 
    GEvent.addListener(newmarker,'click',function(){newmarker.openInfoWindowHtml(html);}); 
    map.addOverlay(newmarker); 
} 

Cette fonction fonctionne bien, il ajoute un marqueur à la carte sans problème, mais en essayant d'utiliser mymarkers [] tableau de marqueurs, ils ne sont pas stockés?

Existe-t-il un validateur pour vérifier que le GMarker est agréable et propre?

google maps main.js jette un bancal:

Uncaught TypeError: Cannot read property '__e_' of undefined 
+0

Désolé, l'article était vide. Je vais vérifier les arguments plus attentivement à l'avenir! Messages d'erreur Googles api pourrait être mieux. – Harry

+0

Vous avez un point sur les messages d'erreur. Cependant, c'est un effet secondaire regrettable de [minification] (http://en.wikipedia.org/wiki/Minification). En fait, de nombreuses bibliothèques JavaScript fournissent une version non-minifiée de "débogage" pour que les développeurs puissent recevoir des messages d'erreur significatifs non-brouillés. –

Répondre

1

Il semble que vous devez utiliser mymarkers[ref] au lieu de newmarker (qui est non définie). En fait, la fonction pourrait être simplifiée plus loin comme suit:

var mymarkers = []; 

function createMarker (point, html, ref) { 
    mymarkers[ref] = new GMarker(point);; 
    GEvent.addListener(mymarkers[ref], 'click', function() { 
     mymarkers[ref].openInfoWindowHtml(html); 
    }); 
    map.addOverlay(mymarkers[ref]); 
} 
+0

simple est mieux merci – Harry