是否有人知道是否/如何限制/限制地图中的标记位置?
我想将我的标记限制在一个城镇内的位置(例如半径为10公里)并且不允许用户拖动/创建一个超出该半径限制的新标记...
答案 0 :(得分:4)
除了我的评论之外,这里还有一个使用地图边界作为边界的例子。
当地图首次加载时,边界定义为地图边界:
bounds = map.getBounds();
然后在标记dragend
事件中,检查新位置是否在定义的范围内,如果不是,则将标记恢复到上次保存的位置:
google.maps.event.addListener(marker, 'dragend', function () {
var position = marker.getPosition();
bounds.contains(position) ? lastPosition = position : marker.setPosition(lastPosition);
});
您可以查看以下示例以获取实例(缩小并拖动原始地图边界之外的标记)。