DOM elements

คลาส OverlayView

google.maps.OverlayView ชั้นเรียน

คุณสามารถใช้คลาสนี้หากต้องการแสดงออบเจ็กต์การวางซ้อนประเภทที่กำหนดเองบนแผนที่

สืบทอดจากชั้นเรียนนี้โดยการตั้งค่าต้นแบบของการวางซ้อน: MyOverlay.prototype = new google.maps.OverlayView(); แน่นอนว่าตัวสร้าง OverlayView เป็นฟังก์ชันที่ว่างเปล่า

คุณต้องใช้ 3 วิธี ได้แก่ onAdd(), draw() และ onRemove()

  • ในเมธอด onAdd() คุณควรสร้างออบเจ็กต์ DOM แล้วเพิ่มเป็นออบเจ็กต์ย่อยของแผง
  • ในเมธอด draw() คุณควรวางตำแหน่งองค์ประกอบเหล่านี้
  • ในเมธอด onRemove() คุณควรนำออบเจ็กต์ออกจาก DOM
คุณต้องเรียกใช้ setMap() ด้วยออบเจ็กต์ Map ที่ถูกต้องเพื่อทริกเกอร์การเรียกเมธอด onAdd() และ setMap(null) เพื่อทริกเกอร์เมธอด onRemove() คุณเรียกใช้เมธอด setMap() ได้ในขณะที่สร้างหรือที่จุดใดก็ได้หลังจากนั้นเมื่อระบบควรแสดงโฆษณาซ้อนทับอีกครั้งหลังจากนำออก ระบบจะเรียกเมธอด draw() เมื่อใดก็ตามที่มีการเปลี่ยนแปลงคุณสมบัติแผนที่ซึ่งอาจเปลี่ยนตำแหน่งขององค์ประกอบ เช่น การซูม กึ่งกลาง หรือประเภทแผนที่

ชั้นเรียนนี้ขยายระยะเวลาถึง MVCObject

เข้าถึงโดยโทรไปที่ const {OverlayView} = await google.maps.importLibrary("maps") หรือ const {OverlayView} = await google.maps.importLibrary("streetView") ดูไลบรารีใน Maps JavaScript API

OverlayView
OverlayView()
พารามิเตอร์: ไม่มี
สร้าง OverlayView
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
พารามิเตอร์: 
ผลลัพธ์: ไม่มี
หยุดคลิก แตะ ลาก และเลื่อนเหตุการณ์ในองค์ประกอบไม่ให้ลอยขึ้นไปยังแผนที่ ใช้ฟีเจอร์นี้เพื่อป้องกันการลากและซูมแผนที่ รวมถึงเหตุการณ์ "คลิก" บนแผนที่
preventMapHitsFrom
preventMapHitsFrom(element)
พารามิเตอร์: 
ผลลัพธ์: ไม่มี
หยุดคลิกหรือแตะองค์ประกอบไม่ให้ฟองขึ้นไปยังแผนที่ ใช้เพื่อป้องกันไม่ให้แผนที่เรียกเหตุการณ์ "คลิก" ให้แสดงขึ้น
draw
draw()
พารามิเตอร์: ไม่มี
ผลลัพธ์: ไม่มี
ใช้วิธีการนี้เพื่อวาดหรืออัปเดตการวางซ้อน ใช้ตำแหน่งจาก projection.fromLatLngToDivPixel() เพื่อวางตำแหน่งภาพซ้อนทับให้ถูกต้อง โดยสัมพันธ์กับ MapPanes เมธอดนี้จะถูกเรียกหลังจาก onAdd() และมีการเรียกเมื่อเปลี่ยนการซูมหรือศูนย์กลาง ไม่แนะนำให้ใช้วิธีการคำนวณซึ่งมีราคาแพงมาก
getMap
getMap()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  Map|StreetViewPanorama
getPanes
getPanes()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  MapPanes|null
แสดงแผงที่สามารถแสดง OverlayView นี้ หน้าต่างจะไม่เริ่มต้นจนกว่า API จะเรียกใช้ onAdd
getProjection
getProjection()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  MapCanvasProjection
แสดงผลออบเจ็กต์ MapCanvasProjection ที่เชื่อมโยงกับ OverlayView นี้ การฉายภาพจะไม่เริ่มต้นจนกว่า API จะเรียกใช้ onAdd
onAdd
onAdd()
พารามิเตอร์: ไม่มี
ผลลัพธ์: ไม่มี
ใช้วิธีนี้เพื่อเริ่มต้นองค์ประกอบ DOM การวางซ้อน ระบบจะเรียกใช้เมธอดนี้ 1 ครั้งหลังจากเรียก setMap() ด้วยแผนที่ที่ถูกต้อง ในขั้นตอนนี้ หน้าต่างและการฉายภาพจะเริ่มต้น
onRemove
onRemove()
พารามิเตอร์: ไม่มี
ผลลัพธ์: ไม่มี
ใช้วิธีนี้เพื่อนำองค์ประกอบออกจาก DOM ระบบจะเรียกใช้เมธอดนี้เมื่อติดตามการเรียก to setMap(null)
setMap
setMap(map)
พารามิเตอร์: 
  • mapMap|StreetViewPanorama optional แผนที่หรือพาโนรามา หาก null เลเยอร์จะถูกนำออก
ผลลัพธ์: ไม่มี
เพิ่มการวางซ้อนลงในแผนที่หรือพาโนรามา
รับค่าเดิม: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

อินเทอร์เฟซ MapPanes

อินเทอร์เฟซ google.maps.MapPanes

floatPane
ประเภท:  Element
ช่องนี้มีหน้าต่างข้อมูล ซึ่งอยู่เหนือการวางซ้อนแผนที่ทั้งหมด (หน้า 4)
mapPane
ประเภท:  Element
บานหน้าต่างนี้เป็นช่องล่างสุดและอยู่เหนือการ์ด ไม่ได้รับเหตุการณ์ DOM (Pane 0)
markerLayer
ประเภท:  Element
ช่องนี้มีเครื่องหมาย ไม่ได้รับเหตุการณ์ DOM (รูปที่ 2)
overlayLayer
ประเภท:  Element
ช่องนี้ประกอบด้วยเส้นประกอบ รูปหลายเหลี่ยม การวางซ้อนพื้น และการวางซ้อนเลเยอร์ชิ้นส่วน ไม่ได้รับเหตุการณ์ DOM (รูปที่ 1)
overlayMouseTarget
ประเภท:  Element
แผงนี้มีองค์ประกอบที่ได้รับเหตุการณ์ DOM (หน้า 3)

อินเทอร์เฟซ MapCanvasProjection

อินเทอร์เฟซ google.maps.MapCanvasProjection

OverlayView จะใช้งานออบเจ็กต์นี้ได้จากภายในวิธีการวาด ไม่มีการรับประกันว่าจะเริ่มต้นจนกว่าจะเรียกใช้การวาด

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
ค่าที่ส่งคืน:  LatLng|null
คำนวณพิกัดทางภูมิศาสตร์จากพิกัดพิกเซลในคอนเทนเนอร์ของแผนที่
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
ค่าที่ส่งคืน:  LatLng|null
คำนวณพิกัดทางภูมิศาสตร์จากพิกัดพิกเซลใน div ที่มีแผนที่ที่ลากได้
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
พารามิเตอร์: 
ค่าที่ส่งคืน:  Point|null
คำนวณพิกัดพิกเซลของตำแหน่งทางภูมิศาสตร์ที่ระบุในองค์ประกอบคอนเทนเนอร์ของแผนที่
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
พารามิเตอร์: 
ค่าที่ส่งคืน:  Point|null
คำนวณพิกัดพิกเซลของตำแหน่งทางภูมิศาสตร์ที่ระบุในองค์ประกอบ DOM ที่มีแผนที่ที่ลากได้
getVisibleRegion
getVisibleRegion()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  VisibleRegion|null
ภูมิภาคที่มองเห็นได้ของแผนที่ แสดงผล null หากแผนที่ไม่มีขนาด แสดงผล null หาก OverlayView อยู่ใน StreetViewPanorama
getWorldWidth
getWorldWidth()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  number
ความกว้างของโลกในหน่วยพิกเซลในระดับการซูมปัจจุบัน สำหรับการฉายภาพที่มีมุมฉากเป็น 90 หรือ 270 องศา สิ่งนี้จะสอดคล้องกับช่วงพิกเซลในแกน Y