2012-06-16 2 views
1

Je suis actuellement en train d'utiliser Google Maps dans un système d'onglets cachés. Tout fonctionne bien sauf que la carte semble décentrer et je dois faire défiler pour trouver mon marqueur.Google Maps redimensionner et centrer dans le système d'onglets

J'ai réussi à charger la carte complète, comme auparavant seule une section de la carte était visible en raison de l'attribut caché.

J'ai utilisé le script ci-dessous mais je reçois une erreur Javascrip "L'objet # n'a pas de méthode 'getCenter'" lorsque vous essayez d'utiliser le .getCenter pour centraliser la carte.

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $('#hotel-listing .option').hide(); 
    $('#hotel-listing .option:first').show(); 
    $('#hotel-listing nav ul li a:first').addClass('active'); 
    $('#hotel-listing nav ul li a').click(function(){ 
    $('#hotel-listing nav ul li a').removeClass('active'); 
    $(this).addClass('active'); 
    var currentTab = $(this).attr('href'); 
    $('#hotel-listing .option').hide(); 
    $(currentTab).show(); 
var currCenter = map.getCenter(); 
google.maps.event.trigger(map, 'resize'); 
map.setCenter(currCenter); 
    return false; 
    }); 
    }); 
</script> 

Toute aide appréciée.

Merci

Répondre

1

Vous avez probablement défini map comme var dans une fonction d'initialisation de la carte et ne peuvent pas y accéder en raison de la portée.

Si vous définissez var map; comme global, dans votre fonction d'initialisation de carte, supprimez var votre code fonctionnera probablement. Sans voir votre code de constructeur de carte est mis en place ce n'est encore qu'une supposition, mais basé sur la plupart des exemples google maps, une bonne estimation théorique

Questions connexes