如何使传单circleMarker可拖动?

sup*_*che 5 javascript drag-and-drop leaflet

使用传单,我创建了一个L.circleMarker并且希望它可拖动:

var marker = L.circleMarker(new L.LatLng(48.94603, 2.25912), {
    draggable: true
})
.bindPopup('Circle marker draggable')
.addTo(map)
.on('dragstart', onMarkerDragStart)
.on('dragend', onMarkerDragEnd);
Run Code Online (Sandbox Code Playgroud)

不幸的是,onMarkerDragStart/End当我拖动标记时,没有任何函数调用。但是,如果我们使用L.marker代替L.circleMarker,它会起作用。

那么,有谁知道如何制作L.circleMarker可拖动的东西?

pk.*_*pk. 1

我分叉了 Leaflet.draw 插件来支持圆形标记。你可以在这里得到它

我像这样启用绘图:

drawCircleMarker: function () {
            this.currentHandler = new L.Draw.CircleMarker(this.map, this.drawControl.options.circleMarker);
            this.currentHandler.enable();
        },
Run Code Online (Sandbox Code Playgroud)

您将需要连接到地图的绘制:创建事件才能获取已添加的图层。

要启用拖动,只需获取已添加的图层并启用对其进行编辑,如下所示:

pathToEdit.editing.enable();
Run Code Online (Sandbox Code Playgroud)