Basic map with Leaflet.js and OpenStreetMap
Leaflet is an an open-source JavaScript library for mobile-friendly interactive maps http://leafletjs.com/ Here data is provided by OpenStreetMap
by megaadriano
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-beta.2.rc.2/leaflet.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-beta.2.rc.2/leaflet.css">
<div id="map"></div>
CSS
#map {
height: 400px;
}
@keyframes fade {
from { opacity: 0.2; }
}
.blinking {
animation: fade 0.5s infinite alternate;
}
JavaScript
// center of the map
var center = [-23.9475514, -46.3389311];
// Create the map
var map = L.map('map').setView(center, 12);
// Set up the OSM layer
L.tileLayer(
'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
maxZoom: 50
}).addTo(map);
// add a marker in the given location
var greenIcon = new L.Icon({
iconUrl: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAiCAYAAACwaJKDAAAABmJLR0QA/wD/AP+gvaeTAAACK0lEQVRIia3Vv2sTYRjA8e9FYiM0jqKVNA5uIoqDKIiTQwd11CLSv6BS3YROtktFlBYXwbUOxU3pYoO/yFRpqYJDC2I7GBFLUWOruco9Ds9zTTzz3l1+PPDwHsnzfvLeve898YiPI8AZ4CCQAQLgE1AG3ifM/S/OAfOA9IOcB7lqYz8ImvNWlxgeMOFBMAiyCBKASCQXQQZBPF35hM1zgpN5kKdNoGb5BCSvq550wSM5kHJKMMwySE7hkSjYB2zebREM856im+bsxHgRxG8T9UEOKTwOekwALg4B2TRb2SSywJA54We7gFopZiUlkJsgCwk1QM08coCsOIo/gmTtbPaCbDjqVurnNxfePuK4tQqwbdc/gR+Ousb5GcAH/DVH8WngGlBEd6HoqLP5viUAS6Nt7nyYo7rYpcYfGiuA1Do4UgVFxxrRA0D1dpvoHQWr5vwTw7tBXrYIvgLpUXTY8biZyoO8SQkugOxVcMoFgnaaR30glQRwvf4cZ4hpfWHsAd4N0LyXhnlZwWWgNwkM4ziwPe0A5+pvz9m0YBj3CyC/I2AAclLBx62CAPuArYcR9LmCAXC0HRTgwbEIeknRUrsgwAlA3hr4jZ2/jiudoADLtwydUXCLhB3PxH1pMTtnF890eIF2wY7iQo81m8O60hudggD7sZ7gKXqqGyjA1+sK/kHfuNhI80wBVl/ruAb86ha6/qGOJkZadOO7jtVuol9srHQT/Wzjapriv73qBcMc5RzUAAAAAElFTkSuQmCC',
className: 'blinking',
iconSize: [20, 30],
iconAnchor: [12, 41],
popupAnchor: [1, -34],
shadowSize: [41, 41]
});
var marker = L.marker(center,{icon: greenIcon}).addTo(map);
console.log(marker);
marker.on('click',function(obj){
alert('clicou no marcador' + obj)
})