Javascript 当移动标记到达某个位置时触发事件

Javascript 当移动标记到达某个位置时触发事件,javascript,leaflet,Javascript,Leaflet,我正在使用插件围绕多段线移动标记 下面是移动标记的启动方式 var locations = [ ["LOCATION_1",25.700769, 82.300140], ["LOCATION_2",26.600969, 83.400260], ["LOCATION_3",27.600969, 84.400260], ["LOCATION_4",28.600969, 85.400260], ["LOCATION_5",29.600969, 86.400260], ["LOC

我正在使用插件围绕多段线移动标记

下面是移动标记的启动方式

var locations = [
  ["LOCATION_1",25.700769, 82.300140],
  ["LOCATION_2",26.600969, 83.400260],
  ["LOCATION_3",27.600969, 84.400260],
  ["LOCATION_4",28.600969, 85.400260],
  ["LOCATION_5",29.600969, 86.400260],
  ["LOCATION_6",24.600969, 87.400260],
  ["LOCATION_7",23.500969, 88.200260],
  ["LOCATION_8",22.400969, 89.300260],
  ["LOCATION_9",25.700569, 90.400000]
];

var latlng = array();

for (var i = 0; i < locations.length; i++) {
  latlngs.push([locations[i][1],locations[i][2]]);
}

var myMovingMarker = L.Marker.movingMarker(latlngs,
  [2500,4000,2000,5000,4000,5000,3000,2000,4000], {
  autostart: true
});
var位置=[
[“位置1”,25.700769,82.300140],
[“位置2”,26.600969,83.400260],
[“位置3”,27.600969,84.400260],
[“位置4”,28.600969,85.400260],
[“位置5”,29.600969,86.400260],
[“地点6”,24.600969,87.400260],
[“地点7”,23.500969,88.200260],
[“地点8”,22.400969,89.300260],
[“地点9”,25.700569,90.400000]
];
var latlng=array();
对于(变量i=0;i
每次标记到达
位置
数组中的坐标时,我都要弹出一条消息。 当标记到达某个
latlng
坐标时,是否有任何方法触发事件


或者,当标记到达某个点时,是否有其他方法绑定弹出窗口。

首先注册捕获
开始状态的事件

myMovingMarker.on('start',function(event) {
  // console log your event
  console.log(event)
});
我不完全确定,但在
事件中应该有一个名为
latlng
的属性。target

一旦您有了
latlng

myMovingMarker.on('move',function(event) {
  // ... you already have your lat and lng here
  // check if your latlng is in your array here
  if (condition) {
     myMovingMarker
       .bindPopup('<b>My popup content !</b>', {closeOnClick: false})
       .openPopup()
  } else {
     myMovingMarker.closePopup()
     myMovingMarker.unbindPopup()
  }
});
myMovingMarker.on('move',函数(事件){ //…您已经有了lat和lng //检查您的latlng是否在您的阵列中 如果(条件){ 移动标记 .bindPopup('我的弹出内容!',{closeOnClick:false}) .openPopup() }否则{ myMovingMarker.closePopup() myMovingMarker.unbindPopup() } });
每次更改
latlng
时,您都需要触发事件处理程序,并在执行所需操作之前,放入逻辑以检查什么是
latlng