从谷歌地图中删除所有控件

时间:2011-06-10 06:57:38

标签: javascript google-maps

我正在尝试从地图中删除所有控件(缩放,地图类型下拉菜单和街景视图)。

有一种方法

map.removeControl(GControl)

但是我无法成功删除任何我自己没有添加的默认内容。

有关从地图中删除/清除所有控件的提示吗?

4 个答案:

答案 0 :(得分:34)

你试过这个:

http://code.google.com/apis/maps/documentation/javascript/controls.html#DisablingDefaults

function initialize() {
  var myOptions = {
    zoom: 4,
    center: new google.maps.LatLng(-33, 151),
    disableDefaultUI: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP  
  }
  var map = new google.maps.Map(document.getElementById("map_canvas"),
       myOptions);
}

答案 1 :(得分:6)

您可能会看到:google map api by w3schools

正如您在链接中看到的那样,这会禁用所有控件:

disableDefaultUI:true

并且下面是启用或禁用它们的选项。

panControl:true,
zoomControl:true,
mapTypeControl:true,
scaleControl:true,
streetViewControl:true,
overviewMapControl:true,
rotateControl:true

答案 2 :(得分:3)

只是disableDefaultUI:true

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 4,
    center: {lat: -33, lng: 151},
    disableDefaultUI: true
  });
}

答案 3 :(得分:2)

我相信你可以创建GMapUIOptions对象的副本,然后删除你不想出现的项目。

来自http://code.google.com/apis/maps/documentation/javascript/v2/controls.html#MapUIOptions

“使用GMapUIOptions对象

GMapUIOptions对象包含一组属性,用于指定您可以修改的控件放置和UI行为。有关完整的属性集,请参阅GMapUIOptions参考。 您可能希望使用Google地图上提供的UI行为预填充GMapUIOptions结构,而不是从头开始编写GMapUIOptions结构。为此,请使用GMap2.getDefaultUI()方法。填充后,您可以修改单个属性以调整行为并使用GMap2.setUI()方法初始化地图的UI控件。 以下代码检索“大”地图上的默认UI,删除GScaleControl并重置地图以使用修改后的UI。

map = new GMap2(document.getElementById("map_canvas"),
    { size: new GSize(400,150) } );
map.setCenter(new GLatLng(41.897997,-87.790203), 11);
var customUI = map.getDefaultUI();
customUI.controls.scalecontrol = false;
map.setUI(customUI);