Javascript, GoogleMap, Marker
2020-12-24T22:49:23+01:00
2020-12-25T14:07:23+01:00
2022-07-19T01:31:41+02:00
.:Des:.
Sziasztok,

az alábbi kóddal jelenítek meg címeket. Szeretném, ha a markerek egymás után az "A", "B", "C"...stb. jeleket kapnák meg. Hogyan csináljam?

<html> <head> <title>Google Maps Multiple Markers</title> <script src="http://maps.google.com/maps/api/js?sensor=false&key=xxxxxxxxxxxxxxxxxxxxxxxxxx" type="text/javascript"></script> </head> <body> <div id="map" style="height: 550px; width: 775px;"> </div> <script type="text/javascript"> var locations = [ ['Próba1 12:21:40',47.5087,23.0265,1], ['Próba2 15:29:34',47.7312,21.768,2], ['Próba3 17:12:13',47.5134,40.017,3], ['Próba4 00:05:49',47.7352,20.768,4], ]; var map = new google.maps.Map(document.getElementById('map'), { zoom: 11, center: new google.maps.LatLng(49.5087, 19.0265), mapTypeId: google.maps.MapTypeId.ROADMAP }); var infowindow = new google.maps.InfoWindow(); var marker, i; for (i = 0; i < locations.length; i++) { marker = new google.maps.Marker({ position: new google.maps.LatLng(locations
[1], locations
[2]), map: map }); google.maps.event.addListener(marker,'click', (function(marker, i) { return function() { infowindow.setContent(locations
[0]); infowindow.open(map, marker); } })(marker, i)); } </script> </body> </html>
Előre is köszönöm.


Mutasd a teljes hozzászólást!
Hali!

A lényeg: marker létrehozásánál adhatsz meg label-t is. Tehát, ha pl. a locations tömböd elemeit kiegészítve egy label-el:
… var locations = [ ['Próba1 12:21:40', 47.5087, 23.0265, 1, 'A'], ['Próba2 15:29:34', 47.7312, 21.768, 2, 'B'], ['Próba3 17:12:13', 47.5134, 40.017, 3, 'C'], ['Próba4 00:05:49', 47.7352, 20.768, 4, 'D'], ]; … for (i = 0; i < locations.length; i++) { marker = new google.maps.Marker({ position: new google.maps.LatLng(locations[i][1], locations[i][2]), title: locations[i][0], label: locations[i][4], map: map }); … } …
De eljárhatsz úgy is, hogy a kirakás sorrendje alapján dinamikusan állítod elő a label-t:
… for (i = 0; i < locations.length; i++) { marker = new google.maps.Marker({ position: new google.maps.LatLng(locations[i][1], locations[i][2]), title: locations[i][0], label: String.fromCharCode(i + 65), map: map }); … } …
Legvégső esetben a Google saját betűs marker-eit is használhatod, az icon tulajdonság beállításával, pl.:
… for (i = 0; i < locations.length; i++) { new google.maps.Marker({ position: new google.maps.LatLng(locations[i][1], locations[i][2]), title: locations[i][0], icon: 'https://maps.google.com/mapfiles/marker' + locations[i][4] + '.png', //icon: 'https://maps.google.com/mapfiles/marker' + String.fromCharCode(i + 65) + '.png', map: map }); … } …
Mutasd a teljes hozzászólást!

abcd