DOM elements

Lớp OverlayView

Lớp google.maps.OverlayView

Bạn có thể triển khai lớp này nếu muốn hiển thị các loại đối tượng lớp phủ tuỳ chỉnh trên bản đồ.

Kế thừa từ lớp này bằng cách thiết lập nguyên mẫu của lớp phủ: MyOverlay.prototype = new google.maps.OverlayView();. Hàm khởi tạo OverlayView được đảm bảo là một hàm trống.

Bạn phải triển khai ba phương thức: onAdd(), draw()onRemove().

  • Trong phương thức onAdd(), bạn nên tạo các đối tượng DOM rồi thêm chúng vào phần tử con của các ngăn.
  • Trong phương thức draw(), bạn nên đặt các phần tử này.
  • Trong phương thức onRemove(), bạn nên xóa các đối tượng khỏi DOM.
Bạn phải gọi setMap() bằng đối tượng Map hợp lệ để kích hoạt lệnh gọi đến phương thức onAdd()setMap(null) để kích hoạt phương thức onRemove(). Phương thức setMap() có thể được gọi tại thời điểm xây dựng hoặc bất cứ lúc nào sau đó, thời điểm lớp phủ hiển thị lại sau khi xoá. Phương thức draw() sau đó sẽ được gọi mỗi khi một thuộc tính của bản đồ thay đổi có thể thay đổi vị trí của phần tử, chẳng hạn như thu phóng, căn giữa hoặc loại bản đồ.

Lớp này mở rộng MVCObject.

Truy cập bằng cách gọi const {OverlayView} = await google.maps.importLibrary("maps") hoặc const {OverlayView} = await google.maps.importLibrary("streetView"). Xem phần Thư viện trong Maps JavaScript API.

OverlayView
OverlayView()
Thông số: Không có
Tạo OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Thông số: 
Giá trị trả về: Không có
Dừng các sự kiện nhấp, nhấn, kéo và xoay bánh xe của phần tử từ việc sủi bóng lên bản đồ. Sử dụng công cụ này để ngăn kéo và thu phóng bản đồ, cũng như các sự kiện "nhấp chuột" trên bản đồ.
preventMapHitsFrom
preventMapHitsFrom(element)
Thông số: 
Giá trị trả về: Không có
Dừng nhấp hoặc nhấn vào phần tử từ khi sủi bóng lên bản đồ. Sử dụng công cụ này để ngăn bản đồ kích hoạt sự kiện "nhấp chuột".
draw
draw()
Thông số: Không có
Giá trị trả về: Không có
Triển khai phương thức này để vẽ hoặc cập nhật lớp phủ. Sử dụng vị trí từ projection.fromLatLngToDivPixel() để định vị chính xác lớp phủ so với MapPanes. Phương thức này được gọi sau onAdd() và được gọi khi thay đổi mức thu phóng hoặc trung tâm. Bạn không nên thực hiện công việc điện toán tốn kém trong phương pháp này.
getMap
getMap()
Thông số: Không có
Giá trị trả về:  Map|StreetViewPanorama
getPanes
getPanes()
Thông số: Không có
Giá trị trả về:  MapPanes|null
Trả về các ngăn mà Lớp phủ này có thể hiển thị. Các ngăn này không được khởi tạo cho đến khi API gọi onAdd.
getProjection
getProjection()
Thông số: Không có
Giá trị trả về:  MapCanvasProjection
Trả về đối tượng MapCanvasProjection liên kết với OverlayView này. Phép chiếu không được khởi tạo cho đến khi API gọi onAdd.
onAdd
onAdd()
Thông số: Không có
Giá trị trả về: Không có
Triển khai phương thức này để khởi tạo các phần tử DOM lớp phủ. Phương thức này được gọi một lần sau khi setMap() được gọi bằng một bản đồ hợp lệ. Lúc này, các ngăn và phép chiếu sẽ được khởi động.
onRemove
onRemove()
Thông số: Không có
Giá trị trả về: Không có
Hãy thực hiện phương thức này để xóa các phần tử của bạn khỏi DOM. Phương thức này được gọi sau khi thực hiện lệnh gọi tới setMap(null).
setMap
setMap(map)
Thông số: 
  • mapMap|StreetViewPanorama optional Bản đồ hoặc ảnh toàn cảnh. Nếu null, lớp này sẽ bị xoá.
Giá trị trả về: Không có
Thêm lớp phủ vào bản đồ hoặc ảnh toàn cảnh.
Kế thừa: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

Giao diện MapPanes

Giao diện google.maps.MapPanes

floatPane
Loại:  Element
Ngăn này chứa cửa sổ thông tin. Nó ở phía trên tất cả các lớp phủ bản đồ. (Ngăn 4).
mapPane
Loại:  Element
Ngăn này là ngăn thấp nhất và ở trên các ô. Tệp này không nhận các sự kiện DOM. (Ngăn 0).
markerLayer
Loại:  Element
Ngăn này chứa các điểm đánh dấu. Tệp này không nhận các sự kiện DOM. (Ngăn 2).
overlayLayer
Loại:  Element
Ngăn này chứa nhiều đường kẻ, đa giác, lớp phủ mặt đất và lớp phủ lớp ô. Tệp này không nhận các sự kiện DOM. (Ngăn 1).
overlayMouseTarget
Loại:  Element
Ngăn này chứa các phần tử nhận sự kiện DOM. (Ngăn 3).

Giao diện MapCanvasProjection

Giao diện google.maps.MapCanvasProjection

Đối tượng này được cung cấp cho OverlayView từ bên trong phương thức vẽ. Chúng tôi không đảm bảo sẽ khởi tạo hàm này cho đến khi gọi được.

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
Thông số: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
Giá trị trả về:  LatLng|null
Tính toán toạ độ địa lý từ các toạ độ pixel trong vùng chứa của bản đồ.
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
Thông số: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
Giá trị trả về:  LatLng|null
Tính toán toạ độ địa lý từ các toạ độ pixel trong div chứa bản đồ có thể kéo.
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
Thông số: 
Giá trị trả về:  Point|null
Tính toán toạ độ pixel của vị trí địa lý đã cho trong phần tử vùng chứa của bản đồ.
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
Thông số: 
Giá trị trả về:  Point|null
Tính toán toạ độ pixel của vị trí địa lý đã cho trong phần tử DOM chứa bản đồ có thể kéo.
getVisibleRegion
getVisibleRegion()
Thông số: Không có
Giá trị trả về:  VisibleRegion|null
Vùng hiển thị của bản đồ. Trả về null nếu bản đồ không có kích thước. Trả về null nếu Lớp phủ hiển thị trên Chế độ xem phố.
getWorldWidth
getWorldWidth()
Thông số: Không có
Giá trị trả về:  number
Chiều rộng thế giới tính bằng pixel ở mức thu phóng hiện tại. Đối với các phép chiếu có góc tiêu đề là 90 hoặc 270 độ, điều này tương ứng với khoảng pixel trong trục Y.