Google Maps API v3标记在自定义图像叠加层上?

时间:2011-08-12 18:29:51

标签: google-maps-api-3

我正在尝试为我们的移动网站创建我们的大学校园地图,该地图即将推出。

我已经按照google的map api v3示例创建了一个我已成功创建的简单图像叠加层(在此处找到:http://code.google.com/apis/maps/documentation/javascript/examples/overlay-simple.html)。

然而,我的问题是,我正在努力解决的问题是,如何放置显示在此图像叠加层之上的标记?

我了解如何在Google地图上制作标记,并尝试使用以下简单代码实现它:

    var myLatLng = new google.maps.LatLng(xx.xxxxx,-xx.xxxxx);
    var marker = new google.maps.Marker({
        position: myLatLng, 
        map:map,
        title:"testing"
    });

然而将其置于初始化部分,导致标记落在我的自定义图像覆盖下...我读到我需要将其放置在比第3个窗格更大的地图窗格中,但这是我需要一些帮助,在哪里放置以及如何放置?

1 个答案:

答案 0 :(得分:1)

标记始终在overlayImage窗格中渲染,因此,不要尝试移动标记,而是移动您添加的叠加层,使其显示在下方窗格中(标记下方)。

替换:

var panes = this.getPanes();
panes.overlayImage.appendChild(div);

使用:

var panes = this.getPanes();
panes.overlayLayer.appendChild(div);

也就是说,用overlayLayer替换overlayImage。 Maps API V3参考告诉我,该窗格包含地面叠加层,多边形和折线(所有这些都显示在标记下方)。