2

我有一个看似简单的情况,但尚未找到解决方案。这是一个临时的开发链接:

[[网址已删除]]

如您所见,我们正在查看全屏 Google 地图。如果您允许页面访问您的位置,它将放大它。如果你想再次缩小到“世界”,你可以点击右上角的地球图标。

我的问题与缩小到“世界”级别有关。我目前为此使用 3 的缩放级别。但是,结果很大程度上取决于使用的视口的大小/DPI。缩放级别 3 大约在我的桌面上,但在我的智能手机上放大得太远,然后只显示非洲。将其设置为零将使其适合智能手机,但在我的桌面上多次显示世界。

我需要的是一种可靠地设置缩放级别的方法,该缩放级别可以准确地完成整个视图世界,而不管视口大小如何。我希望有一个简单的方法来做到这一点?我觉得我在这里忽略了一些非常重要的东西。

请注意,我的问题与标记无关,我只是希望世界恰好适合屏幕一次,无论标记如何。

4

2 回答 2

2

做不到。您可以靠近,但有离散的缩放级别。

我会尝试:

var worldBounds = new google.maps.LatLngBounds(new google.maps.LatLng(-85,-180),
                                               new google.maps.LatLng(85,180));
map.fitBounds(worldBounds);

然后调整 worldBounds 以获得两个平台上的最佳折衷视图。

于 2013-07-01T20:30:27.587 回答
1

您可以在 Javascript 中检测屏幕大小以了解访问设备是台式机还是移动设备,然后相应地设置缩放级别变量以加载地图

于 2013-07-01T21:11:19.833 回答