在我的谷歌地图应用程序中,我有一个跟随移动标记的跟随方法。当它跟随时,我想允许通过所有常用方法(dblclick、dblleftclick、鼠标滚轮和触摸事件)进行缩放,并且我想禁用任何类型的平移。问题是在使用鼠标滚轮和 dblclick 进行缩放时,地图会平移到鼠标的位置。我可以很好地禁用一切,但我想允许缩放。我已经通过使用 jquery 鼠标滚轮插件并使用 delta 更改缩放来解决鼠标滚轮问题。
有没有一些简单的方法可以做到这一点,还是我必须为所有不同的触摸和鼠标事件编写一个监听器?
编辑
我已经禁用了双击、鼠标滚轮缩放和拖动,但我希望双击功能仍然存在。我也想要那里的触摸事件,但我想让它们从中心而不是从事件发生的地方缩放。真正的问题是复制谷歌已经处理的事件但稍微改变了功能
var options = {
disableDoubleClickZoom: true,
draggable: false,
scrollwheel: false,
panControl: false
};
this.map = new google.maps.Map(document.getElementById('map'), options);
我理想的解决方案是,如果有一个disableDoubleClickPan
anddisableScrollwheelPan
或draggable
选项实际可以防止任何形式的所有拖动
编辑
这适用于所有设备,台式机和移动设备。