1

我正在使用 google map v3 javascript api,并尝试根据google.develper的指南创建自定义地图类型。

但是我发现地图类型只提供一个图层,而我的自定义地图类型应该提供两个图层,就像google.maps.MapTypeId.HYBRID包含两个图层一样 -SATELLITEPlacenames.

所以我想知道这是否可能?

BWT,我在这里问过关于地图类型和图层的问题

好像地图类型是由图层组成的,这是真的吗?


事实上,我的第一个问题由Michael Geary.

但是,我现在遇到了新问题,因为它仍然与自定义地图类型有关,所以我更新了这篇文章而不是创建一个新问题。

Q2:

如果我有多个图层,maptypecontrol 怎么样?

如您所见,google.maps.mapTypeId.HYBRID 有两层——卫星和标签。

因此,在 maptype 控件中,您会发现:

在此处输入图像描述

注意Labels复选框。

现在我有两个图层用于我的自定义地图类型base——以及labels,如何使 labels图层可以切换?

4

1 回答 1

1

自定义地图类型为每个图块定义一个 DOM 元素,如此处所述。该 DOM 元素不仅限于单个图像。您可以在<div>其中嵌套任意数量的图像和其他元素。

混合地图类型是用这种方法实现的。这是 Chrome DOM 检查器的屏幕截图,显示了混合卫星视图中的单个地图图块:

混合地图瓦片 DOM 元素

如您所见,他们<div>有两个<img>孩子。第一个从 提供khms0.googleapis.com,是基础卫星平铺图像。第二个,从 提供mts0.googleapis.com,是带有透明背景的标签和边框覆盖图块。就 Maps API 而言,这只是一个单一的地图类型:API 只知道容器<div>,而不知道其中的图像。

文档的基本地图类型部分中的基本地图示例说明了将元素用作地图图块。您可以以此为起点,在.<div><img><div>

于 2013-07-12T06:41:59.207 回答