传单动画标记不显示纬度和经度



我正在使用此代码,当我删除e.latlng.lat and + e.latlng.lng时,它会在弹出窗口中显示消息

var myMovingMarker = L.Marker.movingMarker([
[23.59582641820334, 58.439605236053474],
[21.5278654, 55.9196996]
], [100000], {
icon: orangeIcon
}, {
title: "MyPoint",
alt: "The Big I",
draggable: true
}, )
var popup = L.popup({
keepInView: false,
autoPan: false,
closeButton: false,
closeOnClick: true,
maxWidth: 1000
}).setContent("Lat, Lon : " + e.latlng.lat + ", " + e.latlng.lng)
myMovingMarker.bindPopup(popup).openPopup()

未定义变量e。此外,setContent()设置了一个静态内容,这意味着当你用setContent()添加文本时,即使标记latlng已经更改,也不会更新。

您必须在每次打开弹出窗口时设置内容:

myMovingMarker.on('popupopen',function(e){
var markerLatLng = e.popup._source.getLatLng();
e.popup.setContent("Lat, Lon : " + markerLatLng.lat + ", " + markerLatLng.lng)
})

另一种方法是每次移动标记时更新内容:

myMovingMarker.on('move',function(e){
var markerLatLng = e.target.getLatLng();
popup.setContent("Lat, Lon : " + markerLatLng.lat + ", " + markerLatLng.lng)
})

附言:两者都没有测试,但应该工作

最新更新