2010-09-23 6 views
6

J'espère vraiment que quelqu'un peut vous conseiller sur l'affichage d'une carte Google à partir d'un div caché.affichage Google carte à partir d'une zone cachée

J'ai une carte Google que je veux montrer un utilisateur s'ils cliquent sur un lien par exemple, Afficher le plan.

Mettre la carte dans un div caché ne juste que je fonctionne pas du tout alors je suis allé avec cacher la carte -1000px sur une position de valeur absolue css.

Cela m'a donné des résultats beaucoup mieux, mais quand je l'utilise pour amener la css carte de retour en seulement avoir de celui-ci montre.

http://screencast.com/t/MTMyOGZmNW

Quelqu'un peut-il me donner des conseils sur la meilleure façon d'avoir une carte cachée devenir visible après que je peform un spectacle?

quelqu'un L'espoir peut conseiller.

Merci

Répondre

25

Vous devez vous embêtez pas avec la position absolue et tout cela. Laissez le div caché jusqu'à ce que nécessaire, montrer alors et appelez google.maps.event.trigger(map, 'resize') (v3) ou map.checkResize() (v2)

scénario supplémentaire mentionné dans les commentaires:

Assurez-vous que vous appelez google.maps.event.trigger(map, 'resize') avant d'appeler map.fitBounds() ou vous obtiendrez des résultats inattendus .

+0

Hey Merci. J'ai essayé map.checkResize() pour V2 et im obtenir la carte d'erreur n'est pas définie. Et oui, je sais que j'utilise v2. Aucune suggestion ? – Lee

+0

Aghh je l'ai eu. J'utilise un plugin jQuery. $ .googleMaps.gMap – Lee

+0

Quand appelez-vous google.maps.event.trigger (map, 'redimensionner')? pouvez-vous mettre cela sur l'événement onclick de la div qui est caché (et ensuite affiché) lorsque vous cliquez sur le lien? – Bill

2

Pourquoi ne pas différer le rendu de la carte jusqu'à ce que le div est affiché?

Code rugueux:

$("button").click(function() { 
    $(mapDiv).show(); 
    new google.maps.Map(mapDiv, opts); 
}); 
+1

Et si elle est cachée et montrée à plusieurs reprises? N'êtes-vous pas en train de créer de nombreux objets cartographiques sans jamais les détruire? – Mawg

Questions connexes