2012-03-01 31 views
17

我正在使用JS API來顯示我的地圖。 下面是代碼:如何從谷歌地圖去除縮放,地形和用戶導航?

<script type="text/javascript"> 
    function initialize() { 
     var _lat = 10; 
     var _long = 200; 
     var myLatlng = new google.maps.LatLng(_lat, _long); 
    var myOptions = { 
     center: myLatlng, 
     zoom: 15, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
    var map = new google.maps.Map(document.getElementById("map_canvas"), 
     myOptions); 

     var image = 'target.png'; 
     var beachMarker = new google.maps.Marker({ 
      position: myLatlng, 
      map: map, 
      icon: image 
     }); 

     beachMarker.setMap(map); 
    } 
</script> 

現在我想從地圖中刪除一些東西。

  1. 刪除縮放控件+用戶不應該能夠使用鼠標 或任何
  2. 用戶不應該能夠使用鼠標移動地圖進行放大。它 應該保持靜態圖像
  3. 從地圖中刪除MAP | SATELLITE選項。

我該如何做到這一點。

enter image description here

回答

58
scrollwheel: false, 

該選項用於鼠標禁用變焦。

scaleControl: false, 

此選項用於禁用按比例縮放。

draggable: false, 

此選項用於禁用拖動。

mapTypeControl: false, 

此選項將隱藏地圖類型。

把它們如下:

var myOptions = { 
    center: myLatlng, 
    zoom: 15, 
    mapTypeControl: false, 
    draggable: false, 
    scaleControl: false, 
    scrollwheel: false, 
    navigationControl: false, 
    streetViewControl: false, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
}; 
+0

感謝您的快速回復..我如何刪除它? [IMG] http://i.imgur.com/VKmkm.png [/ IMG] – 2012-03-01 08:01:00

+1

gmap.removeControl();嘗試這個。 – 2012-03-01 08:14:08

+0

空指令不列入工程 – 2012-03-01 08:23:06

15

使用 「禁用默認UI」 例如:

var mapOptions = { 
    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"), mapOptions);` 
+1

這是刪除所需項目而不必列出每個單獨選項的最佳答案。 – ChristoKiwi 2015-04-28 00:24:14

+0

這將刪除用戶界面,但不會阻止用戶使用鼠標或觸摸控件進行滾動/縮放。 – 2016-06-13 20:19:02