您好我正在使用Google Maps API https://angular-maps.com/,我只想在按住Ctrl +滚动滚轮的同时进行缩放。阅读文档我发现了这个:
gestureHandling此设置控制地图上的手势 处理。允许值:
'合作' (双指触摸手势平移和缩放地图。 地图不处理单指触摸手势。)'贪心' (所有 触摸手势平移或缩放地图。)' none' (地图无法平移 或通过用户手势缩放。)' auto' [默认](手势处理是 合作或贪婪,取决于页面是否 是否可滚动。输入:|||
默认值:auto
所以在我的代码中我添加了:
<agm-map
[latitude]="lat"
[longitude]="lng"
[zoom]="zoom"
[gestureHandling]="cooperative"
[mapTypeControl]="true"
[mapTypeControlOptions]="mapType"
>
但不起作用,它不要求我按ctrl进行缩放。
答案 0 :(得分:9)
设置[scrollwheel]="null"
似乎暂时可行。
答案 1 :(得分:1)
我在AGM聊天中找到了一个似乎可以解决此问题的答案。
在模块中将版本设置为4,如:
AgmCoreModule.forRoot({
apiKey: 'your_key',
apiVersion: "4"
}),
Haven自己尝试过,但它对该用户起作用。如果它不起作用,试一试并回来
答案 2 :(得分:1)
我的问题已在https://github.com/SebastianM/angular-google-maps/issues/1411
解决解决方案是:
AgmCoreModule.forRoot({
apiKey: '-bQ',
apiVersion: '3.31'
}),
基本降级地图api修复了但不确定原因。
如前所述,不要忘记添加[gestureHandling]="'cooperative'"
答案 3 :(得分:1)
正如Martti Käärik所述,您可以使用:
[scrollwheel]="null"
或
[scrollwheel]="false"
作为agm-map的输入。两者之间的区别在于,第一个允许使用CMD + scroll或CTRL + scroll进行放大和缩小,并在页面滚动期间在地图上显示有关此消息的信息,而第二个则不显示任何消息,并且不会允许您使用滚动或CMD / CTRL + scroll进行缩放,但也可以使用[zoomControl]="true"
所提供的按钮来控制地图缩放。
如果您需要滚轮和其他输入的参考,可以查看here。
答案 4 :(得分:0)
您可以尝试添加下一个:
[gestureHandling]="'coopeative'"
答案 5 :(得分:0)
实际上,将这些答案结合使用是可行的。
就我而言,[scrollWheel]
控件上最初没有[gestureHandling]
或agm-map
。
必须在API v3.32 +中同时设置[scrollWheel]="null"
和[gestureHandling]="'cooperative'"
才能按需运行。
请注意,设置特定的API版本对于“破坏”更改是一种廉价的解决方法。始终努力应对(即使在支持终止的最后期限之前)。