マーカーをドラッグしている間、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
はマーカー変数です):
google.maps.event.addListener(marker, 'dragstart', function() {
disableMovement(true);
});
google.maps.event.addListener(marker, 'dragend', function() {
disableMovement(false);
});
gmap.setOptions({'scrollwheel': false});