如何在点击或悬停传单标记时显示相同的弹出窗口



我有这样的代码,我想在每个标记中显示'result[key][16]',但悬停弹出总是显示json中的最后一个数据,与点击的弹出不同,因此可以为自己的标记数据显示'result[cey][16]]',我想根据自己的数据显示悬停弹出。伙计们,我该怎么办?抱歉我英语不好。谢谢你

$.ajax({
url: "test.json",
dataType: "JSON",
type: "GET",
success: function (result) {
var popup = 'Code : ' + result[key][16];
L.marker([result[key][1], result[key][2]], {
icon: ikon
}).addTo(layertest).on({
click: showFunction.bind(null, i),
mouseover: function (e) {
layerPopup = L.popup({
closeButton: false,
className: 'hover'
})
.setLatLng(e.latlng)
.setContent(result[key][16])
.openOn(map);
},
mouseout: function (e) {
map.closePopup(layerPopup);
}
}).bindPopup(popup);
i=i+1;
}
})

您可以使用与bindPopup->上的标记连接的弹出窗口的弹出内容;e.target.getPopup().getContent():

layerPopup = L.popup({
closeButton: false,
className: 'hover'
})
.setLatLng(e.latlng)
.setContent(e.target.getPopup().getContent())
.openOn(map);

https://jsfiddle.net/falkedesign/ktfghvyu/

最新更新