64 votes

Le contrôle du zoom et la vue sur la rue ne s'affichent pas sur la carte Google?

J'insère une carte Google très basique dans ma page. La commande de zoom et l'icône de la feuille de route ne sont pas visibles. Toutefois, si je place la souris au bon endroit, je peux zoomer sur la carte et entrer dans le mode Streetview. Donc, les contrôles ne sont tout simplement pas visibles.

 <script type="text/javascript"
    src="//maps.googleapis.com/maps/api/js?key=<apikey>&sensor=false&region=IT">
</script>

var myOptions = {
zoom: 17,
center: latlng,
panControl: true,
zoomControl: true,
    zoomControlOptions: {
      style: google.maps.ZoomControlStyle.LARGE
    },
scaleControl: true,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
  myOptions);
 

Des idées ce que le problème pourrait être?

Contrôles manquants

125voto

skarE Points 4070

C'est certainement un problème de CSS que vous avez avec votre code. Recherchez les CSS qui s'appliquent à toutes les images comme:

 img {
  max-width: 100%;
}
 

46voto

Pete Points 366

J'ai eu ce problème, le correctif était d'inclure ce CSS ...

 .gmnoprint img { max-width: none; }
 

Le sélecteur CSS .gmnoprint img obtient toutes les images [img] sur les contrôles Google Map [gm] qui ne sont pas en cours d'impression [noprint]. Dans mon cas, max-width avait été fixé globalement à 100%. Annuler ce problème a résolu le problème.

2voto

Athimannil Points 2977

Meilleure solution à atteindre uniquement pour google map

 .gmnoprint img {
    max-width: none; 
}
 

0voto

dsomnus Points 576

Notez que sur le moment, il n'est même pas possible de montrer l'intégralité de la taille du curseur de zoom sur les appareils tactiles (ipad, etc). Voici la documentation:

http://code.google.com/apis/maps/documentation/javascript/controls.html

google.cartes.ZoomControlStyle.PETITE affiche une mini-zoom de contrôle, composé de seulement les boutons + et -. Ce style est approprié pour les petites cartes. Sur les appareils tactiles, ce contrôle affiche que les boutons + et - qui sont sensibles aux événements tactiles.

google.cartes.ZoomControlStyle.GRANDE affiche de zoom standard de contrôle du curseur. Sur les appareils tactiles, ce contrôle affiche que les boutons + et - qui sont sensibles aux événements tactiles.

-2voto

ccuesta Points 413

Je pense que cela pourrait être un problème avec le navigateur ou le code de la page dans laquelle vous intégrez cette carte.

Si je regarde ce simple code hello world, les contrôles des cartes s’affichent bien. J'ai géocodé cette carte au même emplacement que votre échantillon, ce qui n'a donc rien à voir avec l'emplacement.

Que se passe-t-il lorsque vous utilisez cet exemple?

 <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
  html { height: 100% }
  body { height: 100%; margin: 0; padding: 0 }
  #map_canvas { height: 100% }
</style>
<script type="text/javascript"
    src="http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=true&region=it">
</script>
<script type="text/javascript">
  function initialize() {
    var latlng = new google.maps.LatLng(45.38686, 8.91927);
    var myOptions = {
    zoom: 17,
    center: latlng,
    panControl: true,
    zoomControl: true,
        zoomControlOptions: {
          style: google.maps.ZoomControlStyle.LARGE
        },
    scaleControl: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"),
      myOptions);
  }

</script>
</head>
<body onload="initialize()">
  <div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X