จะปิดการใช้งานมุมมองดาวเทียมของ Google Map ได้อย่างไร


91

ฉันกำลังทำงานกับ Google Maps Javascript API V 3

ทุกอย่างใช้งานได้ดี แต่ฉันต้องการปิดการใช้งานปุ่มแผนที่ซึ่งปรากฏในพื้นที่ด้านขวาบนด้วยปุ่ม SATELLITE

ฉันจะทำเช่นนี้ได้อย่างไร?

คำตอบ:


66

เมื่อคุณเปิดใช้งานแผนที่และส่งผ่านตัวเลือกไปคุณมีโอกาสที่จะระบุ mapTypeControlOptions สิ่งเหล่านี้มี Array ที่ระบุประเภทของแผนที่ที่คุณจะอนุญาตให้ผู้ใช้สามารถมองเห็นได้ มันสามารถเห็นได้ที่นี่http://code.google.com/apis/maps/documentation/javascript/reference.html#MapTypeControlOptions

หากคุณไม่ต้องการให้ผู้ใช้มีตัวเลือกใด ๆ เกี่ยวกับประเภทแผนที่คุณสามารถระบุได้โดยการตั้งค่า map mapTypeControl เป็นเท็จ


2
การตั้งค่า mapTypeControl เป็นเท็จจะทำให้การควบคุมหายไปอย่างแน่นอน แต่ฉันจะปรับแต่งได้อย่างไรเพื่อให้ mapTypeControl มีเฉพาะปุ่ม SATELLITE และ TERRAIN
Jatin Dhoot

นั่นคือสิ่งที่ mapTypeControlOptions ควรทำ .. มันมีอาร์เรย์ที่คุณสามารถระบุได้ว่า SATELLITE และ TERRAIN เป็นตัวเลือกที่ผู้ใช้ควรเห็น
Kasper Vesth

24
ฉันไม่รู้ว่ามันเป็น v3 หรือเปล่า แต่ถ้ามีคนต้องการซ่อนการควบคุมนี้อย่างสมบูรณ์การตั้งค่าmapTypeControlเป็นfalseจะไม่ทำงาน สิ่งที่ใช้ได้ผลสำหรับฉัน (ใน v3) คือการตั้งค่า:mapTypeControlOptions: { mapTypeIds: [] }
OrPo

125
var myOptions = {
    zoom: 2,
    center: **Your LatLng object**,
    mapTypeControlOptions: {
      mapTypeIds: [google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.HYBRID]
    }, // here´s the array of controls
    disableDefaultUI: true, // a way to quickly hide all controls
    mapTypeControl: true,
    scaleControl: true,
    zoomControl: true,
    zoomControlOptions: {
      style: google.maps.ZoomControlStyle.LARGE 
    },
    mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); // displays in <article id="map_canvas"></article>
//map.mapTypeControl = false; // OPTIONAL: hides the map control

46

ปิดใช้งานตัวเลือกดาวเทียม:

mapTypeControl: false

ปิดใช้งานมุมมองถนน

streetViewControl: false

20

คุณสามารถซ่อนผ่าน css

.gm-style-mtc {
  display: none;
}

1
นี่ไม่ใช่ข้อพิสูจน์ในอนาคต น่าใช้กว่าmapTypeControlOptions
qarthandso

นั่นไม่ใช่วิธีแก้ปัญหา
Emiliano

15

mapTypeControl และ streetViewControl ตัวเลือกเป็นเท็จ

 var map = new google.maps.Map(document.getElementById('map_canvas'), {
             center: new google.maps.LatLng(latitudeFirst, longitudeFirst),
             zoom: 12,
             streetViewControl: false,
             mapTypeControl: false
        });  

3

ฉันมีปัญหาเดียวกัน การตั้งค่าmapTypeControl: falseและส่งผ่านตัวเลือกอื่น ๆ ใช้ได้ผลกับฉัน คุณสามารถตรวจสอบสเปคที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.