是否可以在我拖动标记时禁用 google mal (v3) 内部的移动?我不想使用即静态地图。我需要移动的一般功能,但是在我拖动标记的那一刻,地图不应该移动。
非常感谢!
是否可以在我拖动标记时禁用 google mal (v3) 内部的移动?我不想使用即静态地图。我需要移动的一般功能,但是在我拖动标记的那一刻,地图不应该移动。
非常感谢!
标记有dragstart 和 dragend 事件。开启时,通过将各种MapOptions设置为(如、等)来禁用dragstart
地图上的“移动”功能。开启时,将 MapOptions 设置回。false
draggable
scrollwheel
dragend
true
这是一个可用于禁用或启用基于布尔值的地图移动的函数。它假设您的 Map 变量是map
.
function disableMovement(disable) {
var mapOptions;
if (disable) {
mapOptions = {
draggable: false,
scrollwheel: false,
disableDoubleClickZoom: true,
zoomControl: false
};
} else {
mapOptions = {
draggable: true,
scrollwheel: true,
disableDoubleClickZoom: false,
zoomControl: true
};
}
map.setOptions(mapOptions);
}
然后你在你的事件中使用它(marker
是你的 Marker 变量):
google.maps.event.addListener(marker, 'dragstart', function() {
disableMovement(true);
});
google.maps.event.addListener(marker, 'dragend', function() {
disableMovement(false);
});
gmap.setOptions({'scrollwheel': false});