在信息窗口中使用 Google Maps v3 禁用鼠标滚轮缩放
Posted
技术标签:
【中文标题】在信息窗口中使用 Google Maps v3 禁用鼠标滚轮缩放【英文标题】:Disable mouse scroll-wheel scaling with Google Maps v3 while in an infowindow 【发布时间】:2013-01-04 17:23:14 【问题描述】:我一直在尝试在我的地图上禁用鼠标滚轮缩放,但它似乎不起作用(虽然我很确定它曾经起作用,但可能有所改变)。
无论如何,当用户单击地图标记时,我会出现那些自定义信息窗口,有时它们有足够的内容以显示滚动条。我想确保当人们滚动时,信息窗口的内容会滚动并且地图保持不变。
我的代码(咖啡脚本):
# Disable map Dragging when cursor enters infoBox div
$(document).on "mouseenter", ".infobox-content", () ->
googleMap.setOptions( draggable:false, scrollwheel:false )
$(document).on "mouseleave", ".infobox-content", () ->
googleMap.setOptions( draggable:true, scrollwheel:true )
我确保事件在适当的时候被触发并且事件被正确设置,但它仍然不起作用。
其他类似的问题告诉我做我正在做的事情:
How to disable mouse scroll wheel scaling with Google Maps API Google Maps API v3 won't disable scroll wheel after map loads【问题讨论】:
【参考方案1】:这对我有用(FF、Chrome):
infowindow.open(map, marker);
$('.gm-style-iw').on('wheel', function (e)
e.stopPropagation();
);
每次调用infowindow.open();
时都应该绑定事件监听器
【讨论】:
【参考方案2】:我不知道这是否是解决方案,但它似乎已经解决了。
我没有为jquery-rails
指定gem 版本,并注意到jQuery 的版本现在是1.9。将版本指定为~> 2.1.4
后,jQuery 现在已修复为 1.8,我的问题就消失了。
【讨论】:
以上是关于在信息窗口中使用 Google Maps v3 禁用鼠标滚轮缩放的主要内容,如果未能解决你的问题,请参考以下文章
Google Maps V3:通过 AJAX 加载信息窗口内容
关闭 Google Maps API v3 中的所有信息窗口