Google地图会导致移动设备水平滚动

时间:2016-10-20 23:31:49

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

我正在使用Google Maps JavaScript API(v3)在我的网站上显示两张地图。在移动设备上查看this page (使用Chrome的华硕Zenfone 2)时,我看到一个空白页面是由不必要的巨大水平滚动引起的 - 这是地图的错误。当我从代码中删除地图时,没有水平滚动。当我在地图的容器上使用overflow: hidden,甚至是<body>时,滚动仍然存在。即使我在地图的容器上使用display: none,我仍然会有这个恼人的卷轴。

关于我如何在移动视图中保留此地图并摆脱此滚动的任何建议?

2 个答案:

答案 0 :(得分:0)

将地图放置在响应式自定义的div内,然后调用google.maps.event.trigger(map, 'resize')

您还可以防止这种情况发生,确保在渲染地图之前构建div,例如在用户滚动到某个点之后添加“显示地图”按钮或事件侦听器。

答案 1 :(得分:0)

原来地图会在span的末尾生成<body>。修复很简单:

body > span {
    display: none;
}