2010-05-28 47 views
20

Để xóa điểm đánh dấu bình thường khỏi bản đồ, tôi hiểu bạn chỉ cần gọi marker.setMap (null), nhưng khi triển khai dịch vụ chỉ đường của Google Maps, nó sẽ tự động thêm điểm đánh dấu A và B lên bản đồ (tính toán hướng từ điểm A đến điểm B). Tôi không có quyền kiểm soát các dấu này, vì vậy tôi không thể loại bỏ chúng theo cách thông thường. Vậy làm cách nào để xoá các điểm đánh dấu này (thay vào đó tôi có các điểm đánh dấu tùy chỉnh trên bản đồ)?Xóa dấu chỉ đường khỏi API Google Maps V3

+0

Tôi có cùng một câu hỏi. – Natim

+0

Có thể làm điều tương tự không, nhưng với API v2? – Jonathan

Trả lời

33

Đặt tùy chọn suppressMarkers thành true khi tạo đối tượng DirectionsRenderer của bạn và sau đó điểm đánh dấu sẽ không hiển thị. Bạn cũng có thể thay đổi kiểu hoặc biểu tượng của các điểm đánh dấu. Xem thông số API cho DirectionsRendererOptions để biết các thuộc tính khác mà bạn có thể đặt.

... 
    directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true}); 
    ... 

EDIT: Dường như các API thay đổi một chút kể từ khi câu trả lời ban đầu của tôi gần 6 năm về trước, vì vậy câu trả lời từ @ joni-jones tại là cách chính xác. Tôi đã chỉnh sửa ví dụ trên để phản ánh điều đó.

+0

Điều đó làm cho lừa! Cảm ơn – Natim

+0

Vâng, đây chính xác là những gì tôi đang tìm kiếm. Cảm ơn! – anonymous

+1

Không có tài liệu '.suppressMarkers' của Chỉ định Người gửi. – geocodezip

33

Tôi gặp sự cố tương tự. Các giải pháp trước đó đã không giúp tôi. Nhưng tôi đã thử điều này:

var directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true});
Và nó hoạt động.

Các vấn đề liên quan