Tôi đang sử dụng Tờ rơi để hiển thị bản đồ. Tôi đã tạo một bản đồ với các điểm đánh dấu và tôi không biết cách triển khai Trình nghe sự kiện 'onClick' trên mỗi Điểm đánh dấu.
Mã của tôi
var stops = JSON.parse(json);
var map = new L.Map('map', {
zoom: 12,
minZoom: 12,
center: L.latLng(41.11714, 16.87187)
});
map.addLayer(L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
attribution: 'Map data',
maxZoom: 18,
id: 'mapbox.streets',
accessToken: '-----'
}));
var markersLayer = new L.LayerGroup();
map.addLayer(markersLayer);
//populate map from stops
for (var i in stops) {
L.marker(L.latLng(stops[i].Position.Lat, stops[i].Position.Lon), {
title: stops[i].Description
}).addTo(markersLayer).bindPopup("<b>" + stops[i].Description + "</b>").openPopup();
}
Thí dụ
map.on('click', function(e) {
alert(e.latlng);
});
Tờ rơi đề cập đến người nghe sự kiện bằng cách tham chiếu, vì vậy nếu bạn muốn thêm người nghe và sau đó loại bỏ nó, hãy xác định nó là một hàm:
function onClick(e) { ... }
map.on('click', onClick);
map.off('click', onClick);