如何在Google地图中为版权添加徽标?

TMS*_*TMS 3 google-maps google-maps-api-3

我正在为我的谷歌地图应用程序添加新图层,并希望在那里添加新徽标.就像在这种情况下:

在此输入图像描述

是否有一些干净的方法如何在谷歌地图API中,如在谷歌地图API v2中使用GCopyrightGCopyrightCollection类?或者这在v3中缺失(像许多其他功能一样),我必须手动完成?

Tom*_*mik 7

在Google Maps API v3中,没有版权API.请注意,在v2中,GCopyright用于添加文本版权信息,而不是徽标.

要向地图添加徽标,您必须创建自定义控件.

创建徽标自定义控件:

function MyLogoControl(controlDiv) {
    controlDiv.style.padding = '5px';
    var logo = document.createElement('IMG');
    logo.src = 'img/my_logo.png';
    logo.style.cursor = 'pointer';
    controlDiv.appendChild(logo);

    google.maps.event.addDomListener(logo, 'click', function() {
        window.location = 'http://www.example.com'; 
    });
}
Run Code Online (Sandbox Code Playgroud)

将控件添加到地图:

var logoControlDiv = document.createElement('DIV');
var logoControl = new MyLogoControl(logoControlDiv);
logoControlDiv.index = 0; // used for ordering
map.controls[google.maps.ControlPosition.BOTTOM_LEFT].push(logoControlDiv);
Run Code Online (Sandbox Code Playgroud)

类似地,可以添加版权信息.但您无法修改默认版权,您必须在默认值旁边的某处添加自己的版权.

如果要添加绑定到边界框和/或缩放级别的版权信息,则必须手动创建此类行为.