javascript - 调用 Google maps infowindow.open 会导致网站向下滚动到 infowindow

标签 javascript google-maps google-maps-api-3

我很确定这在很长一段时间内都不是 Google Maps API 的默认行为,但与此同时它肯定已经改变了。
我修改了google提供的Fiddle:https://developers.google.com/maps/documentation/javascript/infowindows
已添加 1000px顶部的“内容” div:

<div style="height: 1000px">CONTENT</div>
并将信息窗口的“自动”打开添加到脚本中
google.maps.event.addListenerOnce(map, 'tilesloaded', function () {
  infowindow.open(map, marker);
});
JS fiddle :
https://jsfiddle.net/ym3c2e8u/
问题:
如果您注释掉打开信息窗口行,请注意页面将加载并显示顶部的“内容”。
如果正在打开信息窗口,浏览器将自动向下滚动到该元素的中心。
这真的很令人沮丧,我想阻止这种行为。

最佳答案

InfoWindow.open() 的默认行为是让浏览器专注于元素。这可以通过使用 InfoWindowOpenOptions 进行更改.

infowindow.open({anchor: marker, shouldFocus: false});
代替:
infowindow.open(map, marker);

关于javascript - 调用 Google maps infowindow.open 会导致网站向下滚动到 infowindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67895102/

相关文章:

javascript - 网页图像加载时间

r - 如何使用R代理?

ios - 如何在不点击标记的情况下在 iOS 谷歌地图中显示信息窗口?

javascript - 您可以使用 Google Maps JavaScript API v3 在同一页面上显示多个带有路线的 map 吗?

google-maps - 谷歌地图 API json_decode 不工作

javascript - 从外部调用 Angular Controller 的方法

javascript - HammerJS 连续拖动(释放后拖动)

javascript - 将标题文本作为输入值 jQuery

javascript - 谷歌地图 js api 版本 3 多边形信息窗口在错误的位置

javascript - Google map api v3, "Object #<Object> has no method ' setValues“错误