gpt4 book ai didi

javascript - 如何重新启用禁用的谷歌地图 v3 拖放、缩放等

转载 作者:行者123 更新时间:2023-12-02 16:23:20 25 4
gpt4 key购买 nike

打开信息窗口后,我设置:

map.setOptions({draggable: false, zoomControl: false, scrollwheel: false, disableDoubleClickZoom: true});

这使得用户无法再与 map 交互,但是当用户单击信息窗口上的“关闭”时...我如何将其设置回默认值?

最佳答案

观察信息窗口的map_changed事件,每次打开或关闭信息窗口时都会触发该事件(无论如何触发)。

根据信息窗口的 map 属性设置值(关闭时为 null,否则为 map 实例)

function initialize() {
var map = new google.maps.Map(document.getElementById('map_canvas'), {
zoom: 14,
center: new google.maps.LatLng(52.549878, 13.425209),
mapTypeId: google.maps.MapTypeId.ROADMAP
}),
marker = new google.maps.Marker({
map: map,
position: map.getCenter()
}),
win = new google.maps.InfoWindow({
content: 'hello world'
});

google.maps.event.addListener(win, 'map_changed', function() {

//will be true when infowindow is open
var boo = !!this.getMap();

map.setOptions({
draggable: !boo,
disableDefaultUI: boo,
scrollwheel: !boo,
disableDoubleClickZoom: boo
});
});

google.maps.event.addListener(marker, 'click', function() {
win.open(map, this);
});
}

google.maps.event.addDomListener(window, 'load', initialize);
html,
body,
#map_canvas {
height: 100%;
margin: 0;
padding: 0
}
<script src="https://maps.googleapis.com/maps/api/js?v=3&.js"></script>
<div id="map_canvas"></div>

关于javascript - 如何重新启用禁用的谷歌地图 v3 拖放、缩放等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28907559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com