如何将标记添加到Google徽标目标?

时间:2016-07-07 09:16:44

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

我正在创建一个以长/纬度为中心的地图对象。单击左下角的Google徽标时,您将路由到与中心位置相同的Google地图。但是在嵌入式地图中,我还在中心位置添加了一个标记。

当您路由到谷歌地图时,是否可以设置该标记? 我在文档中找不到任何内容..

1 个答案:

答案 0 :(得分:1)

徽标的链接如下所示:

https://maps.google.com/maps?ll=40.758893,-73.985132&z=10&t=m&hl=en-US&gl=US&mapclient=apiv3

在您的情况下,您所要做的就是更改链接的参数。 使用?q=40.758893,-73.985132参数代替?ll=40.758893,-73.985132对您来说已经足够了。 q=latitude,longitude为该位置添加了一个标记。虽然可以使用这两个参数。 q是标记的位置,ll是地图的中心。 (在它们之间使用&分隔符)。 我认为违反Google Maps API ToS修改Google品牌或链接。但无论如何,使用javascript可以实现。 您可以在此处查看原始答案:How to change Google logo's href

加载地图后,您可以操作链接:

...
map.addListener('tilesloaded', function(){
    modifyLogoLink();
});
...

以下是如何更改链接:

function modifyLogoLink(){
    var anchors = document.getElementsByTagName('a'),
        l = anchors.length,
        i,
        a;
    for (i = 0; i < l; i++) {
        a = anchors[i];
        if (a.href.indexOf('maps.google.com/maps?') !== -1) {
             // here you can manipulate the anchor
             a.href =  a.href.replace('ll=', 'q=')
        }
    }       
}

另请注意,每次拖动或缩放地图时,Google的链接都会更改。所以你也必须处理这个问题。

希望这有帮助。