Comment sur l'utilisation de l'Infobox plugin plutôt que d'utiliser de l'habitude de l'Infowindow? Je vais mettre un exemple complet dans un jsfiddle exemple ici. La principale chose à propos de l'infobox, c'est que vous pouvez créer votre infobox dans votre page html, vous donnant un contrôle complet sur la façon dont il semble à l'aide de css (et un peu de javascript options, si nécessaire). Voici le code html pour l'infobox:
<div class="infobox-wrapper">
<div id="infobox1">
Infobox is very easy to customize because, well, it's your code
</div>
</div>
L'idée ici est l' "infobox-wrapper"
div sera caché (c'est à dire, display:none en css), puis dans votre javascript vous permet d'initialiser une Infobox objet et de lui donner une référence à votre "infobox" (à l'intérieur, le caché wrapper) comme suit:
infobox = new InfoBox({
content: document.getElementById("infobox1"),
disableAutoPan: false,
maxWidth: 150,
pixelOffset: new google.maps.Size(-140, 0),
zIndex: null,
boxStyle: {
background: "url('http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/tipbox.gif') no-repeat",
opacity: 0.75,
width: "280px"
},
closeBoxMargin: "12px 4px 2px 2px",
closeBoxURL: "http://www.google.com/intl/en_us/mapfiles/close.gif",
infoBoxClearance: new google.maps.Size(1, 1)
});
C'est juste un exemple de quelques-unes des options disponibles. La seule clé est - content
- la référence à l'infobox. Découvrez toutes les options dans l' Infobox de l'API docs.
Et pour ouvrir la fenêtre d'informations:
google.maps.event.addListener(marker, 'click', function() {
infobox.open(map, this);
map.panTo(loc);
});
Et de supplémentaires de Google des exemples ici.
Et pour démontrer la flexibilité de l'InfoBox, ce jsfiddle a une image avec une transition css comme le "champ info".
Et un dernier conseil: Ne pas utiliser la catégorie "infobox" dans votre code html. Il est malheureusement utilisé par le plugin lors de l'infobox est réellement produite.