Salut tout le monde,
je suis en train de développer une application web qui géolocalise les utilisateurs.
J'utilise ainsi api javascript google maps v3 avec jquery.
voila mon code :
J'ai ensuite un fonction javascript qui serait appelée après un clic sur un bouton.Code:
1
2
3
4
5
6
7
8
9
10 $().ready(function() { var latlng = new google.maps.LatLng(49.41483, 2.817895); var options = { center: latlng, zoom: 6, mapTypeId: google.maps.MapTypeId.ROADMAP }; var carte = new google.maps.Map(document.getElementById("carte"), options); });
la fonction est bien appelée et me retourne le texte XML voulu mais les marqueurs ne sont pas affichés dans la carte :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 function afficher(id) { $.ajax({ url : "geo.php", dataType : "XML", data : "id="+id, success : function(data) { var i = 0; $(data).find('fire').each(function() { i = i+1; var fire = $(this); var longi = fire.attr("longitude"); var lati = fire.attr("latitude"); var ltlg = new google.maps.LatLng(lati, longi); var myMarker = new google.maps.Marker({ position: ltlg, map: carte, icon: fire.attr("icone"), title: fire.attr("address") }); }); if(i==0) alert("aucune geo trouvee"); //alert(i); }, error : function() { alert('error'); } }); }
voilà le message:
Élément référencé par son ID/NAME dans le contexte global. Utilisez la propriété standard du W3C « document.getElementById() » à la place.
[Stopper sur une erreur] map: carte,
et quand je remplace carte par document.getElementById("carte") dans la fonction afficher() le texte XML est bien retourné mais les marqueurs ne sont pas affichés et cette fois ci sans message d'erreur.
qu'est ce que je dois faire pour que les marqueurs soient bien affichés???
Merci pour votre aide.