Javascript 谷歌地图v3隐藏元素(道路、路标等)

Javascript 谷歌地图v3隐藏元素(道路、路标等),javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我在上找到了一个代码片段: 我应该可以在地图中使用它,但是有人能告诉我如何使用这个片段吗?我在Google Maps V3的API中找不到任何相关信息。您链接到的页面包含指向的链接。因为,您正在尝试使用新的。以下是如何在简单地图中使用上述样式的一个非常基本的示例: <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=U

我在上找到了一个代码片段:


我应该可以在地图中使用它,但是有人能告诉我如何使用这个片段吗?我在Google Maps V3的API中找不到任何相关信息。

您链接到的页面包含指向的链接。

因为,您正在尝试使用新的。以下是如何在简单地图中使用上述样式的一个非常基本的示例:

<!DOCTYPE html>
<html> 
<head> 
   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
   <title>Google Maps Dark Water Style Demo</title> 
   <script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript"></script> 
</head> 
<body> 
   <div id="map" style="width: 550px; height: 300px;"></div> 

   <script type="text/javascript"> 
     var myStyle = [
       {
         featureType: "administrative",
         elementType: "labels",
         stylers: [
           { visibility: "off" }
         ]
       },{
         featureType: "poi",
         elementType: "labels",
         stylers: [
           { visibility: "off" }
         ]
       },{
         featureType: "water",
         elementType: "labels",
         stylers: [
           { visibility: "off" }
         ]
       },{
         featureType: "road",
         elementType: "labels",
         stylers: [
           { visibility: "off" }
         ]
       }
     ];

     var map = new google.maps.Map(document.getElementById('map'), {
       mapTypeControlOptions: {
         mapTypeIds: ['mystyle', google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.TERRAIN]
       },
       center: new google.maps.LatLng(30, 0),
       zoom: 3,
       mapTypeId: 'mystyle'
     });

     map.mapTypes.set('mystyle', new google.maps.StyledMapType(myStyle, { name: 'My Style' }));
   </script> 
</body> 
</html>

谷歌地图暗水风格演示
var myStyle=[
{
featureType:“管理”,
elementType:“标签”,
样式:[
{可见性:“关闭”}
]
},{
特征类型:“poi”,
elementType:“标签”,
样式:[
{可见性:“关闭”}
]
},{
特色类型:“水”,
elementType:“标签”,
样式:[
{可见性:“关闭”}
]
},{
特色类型:“道路”,
elementType:“标签”,
样式:[
{可见性:“关闭”}
]
}
];
var map=new google.maps.map(document.getElementById('map'){
mapTypeControlOptions:{
MapTypeId:['mystyle',google.maps.MapTypeId.ROADMAP,google.maps.MapTypeId.TERRAIN]
},
中心:新google.maps.LatLng(30,0),
缩放:3,
mapTypeId:“mystyle”
});
map.mapTypes.set('mystyle',新的google.maps.StyledMapType(mystyle,{name:'mystyle'}));
截图:


您可能还想查看,它将允许您以图形方式编辑样式。

我知道这已经是5年前的事了,但我偶然发现了这一点,并且公认的解决方案比我认为需要的复杂得多。考虑到原始帖子中的JSON,以下是将样式应用于现有映射的方式:

var mapStyle = [
  {
    featureType: "administrative",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "poi",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "water",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "road",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  }
]

//create map
var map = new google.maps.Map(...); //This assumes you already have a working map

//set style
map.set('styles', mapStyle);

太好了,这个例子是一个很好的例子,给了我解决方案。是否可以这样做:
featureType:[“poi”,“transit”]
即选择它们,然后同时禁用它们的可见性?是的,可以,使用
featureType:“all”
确定,错过了链接。就像我女朋友说的:我是一个很好的搜索者,但不是一个好的搜索者!我真的没有在页面上看到太多,看起来他们正在使用不同的基础地图道路、卫星等等。他们确实操纵了已经详细说明的样式选项。在这里
var mapStyle = [
  {
    featureType: "administrative",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "poi",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "water",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  },{
    featureType: "road",
    elementType: "labels",
    stylers: [
      { visibility: "off" }
    ]
  }
]

//create map
var map = new google.maps.Map(...); //This assumes you already have a working map

//set style
map.set('styles', mapStyle);