从Google地图中删除报告地图错误

问题描述:

我有一个v3谷歌地图,在地图的右下角有一个覆盖地图的“报告地图错误”链接。有谁知道是否有可能从地图中删除它?从Google地图中删除报告地图错误

编辑: 这里是我的意思的例子:http://jsfiddle.net/ahfA5/

+0

我不能重现这一点。你能给一个地图的链接来演示它吗? (谷歌地图网站是这样做的,但我无法制作API地图) –

+0

例如,如果您放大墨尔本澳大利亚,它会显示消息只出现在某些地区,例如(截至2012年6月)但不在德国法兰克福。 – CrazyTim

+0

CrazyTim,感谢发布示例 – user730016

你不能做到这一点 - 谷歌的尝试,透过众包提供准确的数据将导致此之际。与它一起生活并接受这一限制。如果将其定位为绝对或固定,则可以将自定义元素放在画布上。但是这种侵犯他们的服务条款,因为它也包含版权声明。

没有办法通过API正确禁用此功能。请注意,如果您在未使用API​​的情况下将其隐藏,则将违反Google Maps API Terms of Service,截至本帖子发布之日,该地图不允许开发人员操纵此链接。请参阅10.1.1.f.x:

删除,模糊或以任何方式更改服务或内容中出现的任何品牌特征,徽标,警告,通知......或链接;

您可以对地图进行样式设置以消除此情况。检查出https://developers.google.com/maps/documentation/javascript/styling#creating_a_styledmaptype

请注意,如果您比较前两个屏幕截图,则第一个显示“报告地图错误”链接,但不显示第二个。

到虚拟样式应用到地图,以便它仍然看起来像谷歌地图,但没有错误的链接是做以下简单的方法:

var styleOptions = { 
     name: "Dummy Style" 
    }; 

var MAP_STYLE = [ 
    { 
     featureType: "road", 
     elementType: "all", 
     stylers: [ 
      { visibility: "on" } 
     ] 
    } 
]; 
    var mapType = new google.maps.StyledMapType(MAP_STYLE, styleOptions); 
    map.mapTypes.set("Dummy Style", mapType); 
    map.setMapTypeId("Dummy Style"); 

下面是更新后的jsfiddle http://jsfiddle.net/LwNyy/1/

+2

我不明白downvote。这实际上是有效的,它符合谷歌的服务条款。不是上面悲观的非答案的粉丝。 – keithhackbarth

+1

谢谢,很好的答案。我试过了,甚至没有必要为虚拟样式使用任何选项。这三行足够了: 'var mapType = new google.maps.StyledMapType(); map.mapTypes.set(“Dummy Style”,mapType); map.setMapTypeId(“Dummy Style”);' – typhon

+0

啊甜!我知道必须有一个更简单的方法.. – Onkar

你可以使用CSS技巧隐藏它。这是肮脏的,但工作:

/* remove ugly google report-a-bug button from maps */ 
.gmnoprint:last-child { 
    display: none !important; 
} 

这里介绍的例子做的工作:

var styleOptions = { 
     name: "Dummy Style" 
    }; 

var MAP_STYLE = [ 
    { 
     featureType: "road", 
     elementType: "all", 
     stylers: [ 
      { visibility: "on" } 
     ] 
    } 
]; 
var mapType = new google.maps.StyledMapType(MAP_STYLE, styleOptions); 
map.mapTypes.set("Dummy Style", mapType); 
map.setMapTypeId("Dummy Style"); 

最初的地图显示获得无默认地图上的链接!

在选择之一:从菜单

的MAP /地形或卫星/标签上的地图刷新报告地图上的错误链接将返回。

如果您选择作为创建StyledMapType MAP的替代方法。

报告地图错误链接可以在StyledMap上永久禁用。

但是,您现在有两个MAPS(默认和StyledMap)。

我找不到隐藏默认地图的方法。

底线我无法删除链接从默认地图永久报告地图错误。

自定义样式映射的一个问题是,当从地图/卫星或街道视图切换回来时,它不会返回到自定义样式实例。

// remove the wrapping container 
.gm-style-cc:last-child { 
    display: none !important; 
} 
// remove the link only 
a[title="Report errors in the road map or imagery to Google"] { 
    display: none !important; 
} 
+0

感谢您提供最后的CSS黑客删除链接只。我从来不知道你可以用CSS来做到这一点(即tile =“xyz”) – iamchristos