4

我知道删除覆盖在地图底部的 Google 品牌或 ToS 链接违反 Google Maps API ToS,但我使用地图 API 显示视频游戏地图和 Google 徽标链接以这样一种方式将您发送到与我的游戏内地图的当前视图相同的世界坐标的真实世界地图,这对于这个用例完全没有意义。有什么方法可以禁止点击 Google 徽标链接到 Google 地图?我已经看到了删除徽标的 CSS 示例,但链接仍然存在。我什至不在乎有徽标,而且为了服务条款,我宁愿把它留在那里,但是有没有办法禁用链接?

4

2 回答 2

4

在地图加载后,您始终可以使用 JavaScript 使链接不执行任何操作:

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) {
         a.title = ''; 
         a.onclick = function () { return false; };
    }
}

当地图更改时,您可能必须重做此操作(缓存锚标记,这样您就不必每次都搜索它)。

于 2013-06-26T20:42:23.317 回答
0

您可以挂钩到地图的“空闲”事件,然后使用 jQuery 删除链接,如下所示:

    google.maps.event.addListenerOnce(map, 'idle', function (e) {
    $('a[title="Click to see this area on Google Maps"]').remove();
});

当然,如果他们更改了为title属性定义的文本,那么这会破坏,所以也许其他人可以建议一个更好的选择器——一个可以查看href示例的一部分的选择器。

这样的事情是否会违反我无法评论的使用条款。

于 2015-10-08T15:09:34.280 回答