我怎么能拖动一个标记,并获得lon / lat

时间:2014-03-28 16:57:39

标签: openlayers

我正在使用OpenLayers,我已经找到了拖动标记的实现,但是没有关于如何返回拖动位置的文档。我试过这个:

drag = new OpenLayers.Control.DragFeature(vectors, {
  autoActivate: true,
  onComplete: function () {
    alert('hello')
  }
});

它不会返回拖动哪个标记,因此拖动后无法获得其经度或纬度。

1 个答案:

答案 0 :(得分:2)

实际上the official documentation明确指出onComplete回调的第一个参数是受影响的功能。您可以在处理程序中轻松检查其功能。

例如,转到http://dev.openlayers.org/examples/drag-feature.html,打开浏览器的JS控制台并执行此代码段:

map.addControl(new OpenLayers.Control.DragFeature(vectors, {
  autoActivate: true,
  onComplete: function (feature) {
    alert('x=' + feature.geometry.x + ', y=' + feature.geometry.x);
  }
}));

然后添加一个点并尝试拖动它。