Javascript 获取/设置传单JS circlemarker的唯一id
我有一张上面有几个记号的地图。我用这段代码构建这些标记:Javascript 获取/设置传单JS circlemarker的唯一id,javascript,leaflet,Javascript,Leaflet,我有一张上面有几个记号的地图。我用这段代码构建这些标记: var markers = {}, lbl = 'unique'; markers[lbl] = L.circleMarker(ll, { radius: 8, fillColor: '#ff0000', color: '#00ff00', weight: 0, opacity: 1, fillOpacity: 0.9,
var markers = {},
lbl = 'unique';
markers[lbl] = L.circleMarker(ll,
{ radius: 8,
fillColor: '#ff0000',
color: '#00ff00',
weight: 0,
opacity: 1,
fillOpacity: 0.9,
className: 'svgMarker'
})
.bindLabel('This is '+lbl)
.addTo(markerLayer)
.addTo(map)
.on('click', clickHandler);;
在clickHandler中,我想根据单击的标记加载一些内容。为了区分它们,我有一个lbl
(label)var,它保存标记的唯一字母数字ID
function clickHandler(event){
//- zoom to the marker
map.setView(ev.latlng, 16);
//- Load the marker dependent stuff.
// how can I pass the unique label to this function?
}
有没有一种方法可以通过鼠标事件传递唯一id,或者有没有其他方法可以为标记提供一个“属性”,我可以在clickHandler中读取该属性?只需向标记添加一个属性(只是javascript内容)。。。您可以使用事件处理程序中的上下文“this”将其取回
var marker = L.marker([48.8588589,2.3470599]);
marker.id = 'unique_id';
marker.addTo(map);
marker.on('click', clickHandler);
function clickHandler(event) {
console.log(this.id);
}