我想限制使用lat和amp;之间的界限Lng co-ords,如果合作者击中界限,则地图不应该是可拖动的。
除了我的styedMap(变量)之外,脚本加载正常。但是我似乎无法将此代码段 - How do I limit panning in Google maps API V3?合并到我自己的代码中。
注意:IF语句只检查数据属性是否存在,因此调用代码。
function area_page_map() {
var mapOptions = {
center: new google.maps.LatLng(51.5697317,-1.7923051),
minZoom: 11,
maxZoom: 20,
zoom: 11,
scrollwheel: false,
scaleControl: false,
streetViewControl: false,
mapTypeControl: false,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var allowedBounds = new google.maps.LatLngBounds(
new google.maps.LatLng(51.4380251,-2.047586),
new google.maps.LatLng(51.6556491,-1.6716272)
);
var lastValidCenter = map.getCenter();
google.maps.event.addListener(map, 'center_changed', function() {
if (allowedBounds.contains(map.getCenter())) {
lastValidCenter = map.getCenter();
return;
}
// not valid anymore => return to last valid position
map.panTo(lastValidCenter);
});
var map = new google.maps.Map(document.getElementById("area__map"), mapOptions);
// Associate the styled map
map.mapTypes.set('area__map', styledMap);
map.setMapTypeId('area__map');
}
if ( $area__page__map.length ){
google.maps.event.addDomListener(window, 'load', area_page_map);
}
如果在满足界限时还有一种触发功能的方法,那就太好了。地图包装红色边框。
- 非常感谢