Lớp InfoWindow
Lớp google.maps.InfoWindow
Lớp phủ trông giống như một bong bóng và thường được kết nối với một điểm đánh dấu.
Lớp này mở rộng MVCObject
.
Truy cập bằng cách gọi const {InfoWindow} = await google.maps.importLibrary("maps")
hoặc const {InfoWindow} = await google.maps.importLibrary("streetView")
. Xem phần Thư viện trong API Maps JavaScript.
Hàm dựng | |
---|---|
InfoWindow |
InfoWindow([opts]) Thông số:
Tạo một cửa sổ thông tin với các tuỳ chọn đã cho. Bạn có thể đặt InfoWindow trên bản đồ ở một vị trí cụ thể hoặc phía trên một điểm đánh dấu, tuỳ thuộc vào nội dung được chỉ định trong các tuỳ chọn. Trừ phi bạn tắt tính năng tự động kéo, InfoWindow sẽ kéo bản đồ để hiển thị khi được mở. Sau khi tạo InfoWindow, bạn phải gọi open để hiển thị InfoWindow trên bản đồ. Người dùng có thể nhấp vào nút đóng trên InfoWindow để xoá cửa sổ đó khỏi bản đồ hoặc nhà phát triển có thể gọi close() để có cùng hiệu quả. |
Thuộc tính | |
---|---|
isOpen |
Loại:
boolean Kiểm tra xem InfoWindow có đang mở hay không. |
Phương thức | |
---|---|
close |
close() Thông số: Không có
Giá trị trả về: Không có
Đóng InfoWindow này bằng cách xoá nó khỏi cấu trúc DOM. |
focus |
focus() Thông số: Không có
Giá trị trả về: Không có
Đặt tiêu điểm vào InfoWindow này. Bạn nên cân nhắc sử dụng phương thức này cùng với sự kiện visible để đảm bảo InfoWindow hiển thị trước khi đặt tiêu điểm vào đó. Không thể lấy tiêu điểm một InfoWindow không hiển thị. |
getContent |
getContent() Thông số: Không có
|
getHeaderContent |
getHeaderContent() Thông số: Không có
Giá trị trả về:
string|Element|Text|null|undefined Nội dung tiêu đề của InfoWindow này. Xem InfoWindowOptions.headerContent . |
getHeaderDisabled |
getHeaderDisabled() Thông số: Không có
Giá trị trả về:
boolean|undefined Liệu toàn bộ hàng tiêu đề có bị tắt hay không. Xem InfoWindowOptions.headerDisabled . |
getPosition |
getPosition() Thông số: Không có
Giá trị trả về:
LatLng|null|undefined Vị trí LatLng của InfoWindow này. |
getZIndex |
getZIndex() Thông số: Không có
Giá trị trả về:
number zIndex của InfoWindow này. |
open |
open([options, anchor]) Thông số:
Giá trị trả về: Không có
Mở InfoWindow này trên bản đồ đã cho. Bạn có thể liên kết một InfoWindow với một neo nếu muốn. Trong API cốt lõi, neo duy nhất là lớp Marker. Tuy nhiên, neo có thể là bất kỳ MVCObject nào hiển thị thuộc tính LatLng position và tuỳ ý thuộc tính Point anchorPoint để tính toán pixelOffset (xem InfoWindowOptions). anchorPoint là độ dời từ vị trí của neo đến đầu InfoWindow. Bạn nên sử dụng giao diện InfoWindowOpenOptions làm đối số duy nhất cho phương thức này. Để ngăn thay đổi tiêu điểm trình duyệt khi mở, hãy đặt InfoWindowOpenOptions.shouldFocus thành false . |
setContent |
setContent([content]) Giá trị trả về: Không có
|
setHeaderContent |
setHeaderContent([headerContent]) Thông số:
Giá trị trả về: Không có
|
setHeaderDisabled |
setHeaderDisabled([headerDisabled]) Thông số:
Giá trị trả về: Không có
|
setOptions |
setOptions([options]) Thông số:
Giá trị trả về: Không có
|
setPosition |
setPosition([position]) Thông số:
Giá trị trả về: Không có
|
setZIndex |
setZIndex(zIndex) Thông số:
Giá trị trả về: Không có
|
Kế thừa:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Sự kiện | |
---|---|
close |
function() Đối số: Không có
Sự kiện này được kích hoạt bất cứ khi nào InfoWindow đóng. Ví dụ: điều này có thể là do gọi phương thức InfoWindow.close , nhấn phím thoát để đóng InfoWindow hoặc nhấp vào nút đóng hoặc di chuyển InfoWindow sang một bản đồ khác. |
closeclick |
function() Đối số: Không có
Sự kiện này được kích hoạt khi người dùng nhấp vào nút đóng. |
content_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi thuộc tính nội dung thay đổi. |
domready |
function() Đối số: Không có
Sự kiện này được kích hoạt khi <div> chứa nội dung của InfoWindow được đính kèm vào DOM. Bạn nên theo dõi sự kiện này nếu đang xây dựng nội dung cửa sổ thông tin một cách linh động. |
headercontent_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi thuộc tính headerContent thay đổi. |
headerdisabled_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi thuộc tính headerDisabled thay đổi. |
position_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi thuộc tính vị trí thay đổi. |
visible |
function() Đối số: Không có
Sự kiện này được kích hoạt khi InfoWindow hiển thị đầy đủ. Sự kiện này không được kích hoạt khi InfoWindow bị kéo ra rồi lại kéo vào màn hình. |
zindex_changed |
function() Đối số: Không có
Sự kiện này được kích hoạt khi zIndex của InfoWindow thay đổi. |
Giao diện InfoWindowOptions
Giao diện google.maps.InfoWindowOptions
Đối tượng InfoWindowOptions dùng để xác định các thuộc tính có thể được đặt trên InfoWindow.
Thuộc tính | |
---|---|
ariaLabel optional |
Loại:
string optional AriaLabel để chỉ định cho InfoWindow. |
content optional |
Nội dung hiển thị trong InfoWindow. Đây có thể là một phần tử HTML, một chuỗi văn bản thuần tuý hoặc một chuỗi chứa HTML. InfoWindow sẽ được định cỡ theo nội dung. Để đặt kích thước rõ ràng cho nội dung, hãy đặt nội dung thành một phần tử HTML có kích thước đó. |
disableAutoPan optional |
Loại:
boolean optional Mặc định:
false Tắt tính năng kéo bản đồ để InfoWindow hiển thị đầy đủ khi mở. |
headerContent optional |
Nội dung hiển thị trong hàng tiêu đề InfoWindow. Đây có thể là một phần tử HTML hoặc một chuỗi văn bản thuần tuý. InfoWindow sẽ được định cỡ theo nội dung. Để đặt kích thước rõ ràng cho nội dung tiêu đề, hãy đặt headerContent thành một phần tử HTML có kích thước đó. |
headerDisabled optional |
Loại:
boolean optional Tắt toàn bộ hàng tiêu đề trong InfoWindow. Khi được đặt thành true, tiêu đề sẽ bị xoá để nội dung tiêu đề và nút đóng sẽ bị ẩn. |
maxWidth optional |
Loại:
number optional Chiều rộng tối đa của InfoWindow, bất kể chiều rộng của nội dung. Giá trị này chỉ được xem xét nếu được đặt trước lệnh gọi đến open() . Để thay đổi chiều rộng tối đa khi thay đổi nội dung, hãy gọi close() , setOptions() rồi đến open() . |
minWidth optional |
Loại:
number optional Chiều rộng tối thiểu của InfoWindow, bất kể chiều rộng của nội dung. Khi sử dụng thuộc tính này, bạn nên đặt minWidth thành một giá trị nhỏ hơn chiều rộng của bản đồ (tính bằng pixel). Giá trị này chỉ được xem xét nếu được đặt trước lệnh gọi đến open() . Để thay đổi chiều rộng tối thiểu khi thay đổi nội dung, hãy gọi close() , setOptions() rồi đến open() . |
pixelOffset optional |
Loại:
Size optional Độ lệch, tính bằng pixel, của đầu cửa sổ thông tin so với điểm trên bản đồ có toạ độ địa lý là điểm neo của cửa sổ thông tin. Nếu một InfoWindow được mở bằng một neo, thì pixelOffset sẽ được tính từ thuộc tính anchorPoint của neo. |
position optional |
Loại:
LatLng|LatLngLiteral optional LatLng tại vị trí hiển thị InfoWindow này. Nếu InfoWindow được mở bằng một neo, thì vị trí của neo sẽ được sử dụng. |
zIndex optional |
Loại:
number optional Tất cả InfoWindows đều hiển thị trên bản đồ theo thứ tự zIndex, với các giá trị cao hơn hiển thị trước InfoWindows có giá trị thấp hơn. Theo mặc định, InfoWindows hiển thị theo vĩ độ, với InfoWindows ở vĩ độ thấp hơn xuất hiện trước InfoWindows ở vĩ độ cao hơn. InfoWindows luôn hiển thị trước các điểm đánh dấu. |
Giao diện InfoWindowOpenOptions
Giao diện google.maps.InfoWindowOpenOptions
Các tuỳ chọn để mở InfoWindow
Thuộc tính | |
---|---|
anchor optional |
Loại:
MVCObject|AdvancedMarkerElement optional Điểm neo mà InfoWindow này sẽ được định vị. Nếu neo không phải là giá trị rỗng, InfoWindow sẽ được đặt ở giữa trên cùng của neo. InfoWindow sẽ được kết xuất trên cùng một bản đồ hoặc ảnh toàn cảnh với neo (nếu có). |
map optional |
Loại:
Map|StreetViewPanorama optional Bản đồ hoặc ảnh toàn cảnh để hiển thị InfoWindow này. |
shouldFocus optional |
Loại:
boolean optional Liệu có nên di chuyển tiêu điểm vào bên trong InfoWindow khi mở hay không. Khi thuộc tính này không được đặt hoặc khi thuộc tính này được đặt thành null hoặc undefined , một phương pháp phỏng đoán sẽ được dùng để quyết định có di chuyển tiêu điểm hay không. Bạn nên đặt thuộc tính này một cách rõ ràng cho phù hợp với nhu cầu của mình vì phương pháp phỏng đoán có thể thay đổi và có thể không hoạt động tốt trong mọi trường hợp sử dụng. |