You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.9 KiB
83 lines
1.9 KiB
/* ------------------------------------------------------------------------------ |
|
* |
|
* # Animated markers |
|
* |
|
* Specific JS code additions for maps_google_markers.html page |
|
* |
|
* Version: 1.0 |
|
* Latest update: Aug 1, 2015 |
|
* |
|
* ---------------------------------------------------------------------------- */ |
|
|
|
$(function() { |
|
|
|
// If you're adding a number of markers, you may want to |
|
// drop them on the map consecutively rather than all at once. |
|
// This example shows how to use setTimeout() to space |
|
// your markers' animation. |
|
|
|
|
|
// Add Berlin coordinates |
|
var berlin = new google.maps.LatLng(52.520816, 13.410186); |
|
|
|
// Add neighborhoods coordinates |
|
var neighborhoods = [ |
|
new google.maps.LatLng(52.511467, 13.447179), |
|
new google.maps.LatLng(52.549061, 13.422975), |
|
new google.maps.LatLng(52.497622, 13.396110), |
|
new google.maps.LatLng(52.517683, 13.394393) |
|
]; |
|
|
|
|
|
// Variables |
|
var markers = []; |
|
var iterator = 0; |
|
var map; |
|
|
|
|
|
// Initialize |
|
function initialize() { |
|
|
|
// Options |
|
var mapOptions = { |
|
zoom: 12, |
|
center: berlin |
|
}; |
|
|
|
// Apply options |
|
map = new google.maps.Map($('.map-marker-animation')[0], mapOptions); |
|
} |
|
|
|
|
|
// Drop markers |
|
function drop() { |
|
for (var i = 0; i < neighborhoods.length; i++) { |
|
setTimeout(function() { |
|
addMarker(); |
|
}, i * 200); |
|
} |
|
} |
|
|
|
|
|
// Add markers |
|
function addMarker() { |
|
markers.push(new google.maps.Marker({ |
|
position: neighborhoods[iterator], |
|
map: map, |
|
draggable: false, |
|
animation: google.maps.Animation.DROP |
|
})); |
|
iterator++; |
|
} |
|
|
|
|
|
// Drop markers on button click |
|
$('.drop-markers').on('click', function() { |
|
drop(); |
|
}); |
|
|
|
|
|
// Initialize map on window load |
|
google.maps.event.addDomListener(window, 'load', initialize); |
|
|
|
});
|
|
|