Template:Fragoria Map
From FragoriaWiki
(Difference between revisions)
Line 40: | Line 40: | ||
map.setMapTypeId('moon'); | map.setMapTypeId('moon'); | ||
+ | // Bounds | ||
+ | var strictBounds = new google.maps.LatLngBounds( | ||
+ | new google.maps.LatLng(-89.991,-180), | ||
+ | new google.maps.LatLng(85,180) | ||
+ | ); | ||
+ | // Listen for the CENTER_CHANGED event | ||
+ | |||
+ | google.maps.event.addListener(map, 'center_changed', function() { | ||
+ | if (strictBounds.contains(map.getCenter())) return; | ||
+ | |||
+ | // We're out of bounds - Move the map back within the bounds | ||
+ | |||
+ | var c = map.getCenter(), | ||
+ | x = c.lng(), | ||
+ | y = c.lat(), | ||
+ | maxX = strictBounds.getNorthEast().lng(), | ||
+ | maxY = strictBounds.getNorthEast().lat(), | ||
+ | minX = strictBounds.getSouthWest().lng(), | ||
+ | minY = strictBounds.getSouthWest().lat(); | ||
+ | |||
+ | if (x < minX) x = minX; | ||
+ | if (x > maxX) x = maxX; | ||
+ | if (y < minY) y = minY; | ||
+ | if (y > maxY) y = maxY; | ||
+ | |||
+ | map.setCenter(new google.maps.LatLng(y, x)); | ||
+ | }); | ||
+ | |||
+ | // Limit the zoom level | ||
+ | google.maps.event.addListener(map, 'zoom_changed', function() { | ||
+ | if (map.getZoom() < minZoomLevel) map.setZoom(minZoomLevel); | ||
+ | }); | ||
var FragotownMarker = new google.maps.Marker({ | var FragotownMarker = new google.maps.Marker({ |
Revision as of 04:22, 5 April 2015
Coordinates