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 đặt 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 3 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 và thêm các đối tượng đó làm thành phần con của ngăn.
  • Trong phương thức draw(), bạn nên định vị các phần tử này.
  • Trong phương thức onRemove(), bạn nên xoá các đối tượng khỏi DOM.
Bạn phải gọi setMap() bằng một đố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(). Bạn có thể gọi phương thức setMap() tại thời điểm tạo hoặc bất cứ lúc nào sau đó khi lớp phủ cần hiển thị lại sau khi xoá. Sau đó, phương thức draw() sẽ được gọi bất cứ khi nào một thuộc tính 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 API Maps JavaScript.

OverlayView
OverlayView()
Thông số:  Không có
Tạo OverlayView.
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
Thông số: 
Giá trị trả về:  Không có
Ngăn sự kiện nhấp, nhấn, kéo và con lăn trên phần tử chuyển lên bản đồ. Sử dụng tính năng này để ngăn việc kéo và thu phóng bản đồ, cũng như các sự kiện "nhấp" trên bản đồ.
preventMapHitsFrom
preventMapHitsFrom(element)
Thông số: 
Giá trị trả về:  Không có
Ngừng nhấp hoặc nhấn vào phần tử để chuyển lên bản đồ. Sử dụng thuộc tính này để ngăn bản đồ kích hoạt sự kiện "nhấp".
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() để đặt 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 chế độ thu phóng hoặc căn giữa. Bạn không nên thực hiện công việc tốn kém về mặt tính toán trong phương thức 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 có thể hiển thị OverlayView này. Các ngăn sẽ 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 được liên kết với OverlayView này. Hình 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 chạy 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ệ. Tại thời điểm này, các ngăn và phép chiếu sẽ được khởi tạo.
onRemove
onRemove()
Thông số:  Không có
Giá trị trả về:  Không có
Triển khai phương thức này để xoá các phần tử khỏi DOM. Phương thức này được gọi một lần sau lệnh gọi setMap(null).
setMap
setMap(map)
Thông số: 
  • mapMap|StreetViewPanorama optional Bản đồ hoặc ảnh toàn cảnh. Nếu là null, lớp 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. Lớp phủ này nằm 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à nằm phía trên các thẻ thông tin. Lớp này không nhận đượ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. Lớp này không nhận được sự kiện DOM. (Ngăn 2).
overlayLayer
Loại:  Element
Ngăn này chứa các đường đa tuyến, đa giác, lớp phủ mặt đất và lớp phủ lớp xếp kề. Lớp này không nhận đượ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ẽ. Không đảm bảo rằng lớp này được khởi tạo cho đến khi lệnh vẽ được gọi.

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ừ 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ừ 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ý nhất định 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
Khu vực 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 OverlayView nằm trên StreetViewPanorama.
getWorldWidth
getWorldWidth()
Thông số:  Không có
Giá trị trả về:  number
Chiều rộng của 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 hướng là 90 hoặc 270 độ, giá trị này tương ứng với khoảng pixel trên trục Y.