Question

J'ai une carte Google qui a soudainement cessé de fonctionner sans raison apparente (je n'avais pas touché le code pendant des mois, mais le code d'emballage de notre système de gestion de contenu peut avoir été modifié sans que l'entreprise ne me le dise.)

.

http://www.democratandchronicle.com/section/builder

(désolé pour le mauvais code HTML en dehors de la carte, il provient en grande partie de notre société mère ...)

Je l'ai réduit à cette partie de ma drawMarker fonction:

GEvent.addListener(marker, 'click', function() {
  marker.openInfoWindowHtml(html, { maxWidth: 500 });
});

À noter:

  • alert(html); affiche le code HTML correct pour l’infowindow.
  • Le code HTML dans la variable html est en effet valide.
  • L'événement de clic se déclenche (confirmé par alert('test'); son contenu)
  • Une autre carte que je héberge sur le même site fonctionne bien , malgré un code similaire.
  • Aucune erreur JavaScript dans Firebug ou IE que je puisse voir.

Je me cogne la tête contre cela depuis un moment. Qu'est-ce qui me manque?

Était-ce utile?

La solution 5

Ceci s'est résolu. Je soupçonne qu'une mise à jour de l'API a cassé quelque chose pour une version ou deux.

Autres conseils

J'ai parfois eu des problèmes aléatoires avec l'API Google Maps et plusieurs fois, il a été corrigé en remontant une version de l'API. c'est-à-dire si la chaîne d'inclusion javascript de l'API Google Maps est comme ceci http://maps.google.com/maps?file=api&v=2.xd&key=XXXXX remplacez 2.x par quelque chose qui remonte quelques versions auparavant (à l'époque où cela fonctionnait), par exemple 2.132 ou quelque chose de différent

essayez:

GEvent.addListener(marker, 'click', function() {
  this.openInfoWindowHtml(html, { maxWidth: 500 });
});

rappelez-vous la portée de l'objet & "; marqueur &"; est en dehors de votre fonction

J'ai récemment eu ce problème, les gestionnaires d'événements ont définitivement fonctionné, etc. Il s'est avéré qu'il y avait deux instances de Google Maps < script > tag sur la page. En retirer un a corrigé le problème.

Essayez de forcer JavaScript à créer une nouvelle variable à partir de votre code HTML:

GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html+'', { maxWidth: 500 });
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top