Voici un petit tutoriel pour apprendre à afficher sur son site Internet une carte Google Map et y insérer un marqueur de lieu.
Le lieu à insérer étant tapé dans un formulaire de recherche sur le site Internet (Voir exemple sur cette page), c'est l'API Google map qui cherche ses coordonnées latitude longitude pour ensuite afficher l'adresse sur la carte.
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false&language=fr"> </script>
Ce code HTML comprend :
<form> <input type="text" id="adresse"/> <input type="button" value="Localiser sur Google Map" onclick="TrouverAdresse();"/> </form> <span id="text_latlng"></span> <div id="map-canvas" style="float:right;height:220px;width:45%"></div>
Le code javascript comprend
<script type="text/javascript"> var geocoder; var map; // initialisation de la carte Google Map de départ function initialiserCarte() { geocoder = new google.maps.Geocoder(); // Ici j'ai mis la latitude et longitude du vieux Port de Marseille pour centrer la carte de départ var latlng = new google.maps.LatLng(43.295309,5.374457); var mapOptions = { zoom : 14, center : latlng, mapTypeId : google.maps.MapTypeId.ROADMAP } // map-canvas est le conteneur HTML de la carte Google Map map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); } function TrouverAdresse() { // Récupération de l'adresse tapée dans le formulaire var adresse = document.getElementById('adresse').value; geocoder.geocode( { 'address': adresse}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { map.setCenter(results[0].geometry.location); // Récupération des coordonnées GPS du lieu tapé dans le formulaire var strposition = results[0].geometry.location+""; strposition=strposition.replace('(', ''); strposition=strposition.replace(')', ''); // Affichage des coordonnées dans le <span> document.getElementById('text_latlng').innerHTML='Coordonnées : '+strposition; // Création du marqueur du lieu (épingle) var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Adresse introuvable: ' + status); } }); } // Lancement de la construction de la carte google map google.maps.event.addDomListener(window, 'load', initialiserCarte); </script>
Vous trouverez un exemple d'utilisation de ce code mis en place sur ce site : citadineries.fr
Ce qui serait encore mieux et c'est ce que je cherche, c'est la possibilité de déplacer le curseur après avoir indiqué une adresse ceci afin de rajouter une précision supplémentaire sur le lieux ... si quelqu'un a ça ? Je suis grandement preneur (pascalpujades@gmail.com).
Merci d'avance,