1

我正在开发传单应用程序。我还使用我的自定义绘制控件以及传单绘制控件。

最近,单击传单绘制控件时,我需要取消绑定自定义控件。

假设我在脚本中有一个自定义控件,那么我该如何卸载该函数:

map.on('点击', wallPlace);

脚本(在澄清的情况下)

L.easyButton('<img src="assets/img/wallicon.png" title="Draw Wall">', function () {
                    map.on('click', wallPlace);
                    polylineWall = new L.Polyline([], { color: 'yellow' });
                }).addTo(map);
function wallPlace(){//some stuff}

我一直在搜索和检查事件列表器中的事件,但找不到任何事件。

由于我是 javascript 的新手,因此仍然存在一些理解问题。如果有人知道,请提供帮助,在此先感谢。

4

1 回答 1

3

您可以on使用该off方法绑定和取消绑定事件。这在官方传单网站上的参考指南中得到了很好的描述:

http://leafletjs.com/reference.html#events

如果您想知道是否有人开始使用 Leaflet.Draw 进行绘图或编辑,您可以使用draw:drawstartanddraw:editstart事件:

map.on('draw:drawstart', function () {
    map.off('click', mapClickHandler);
});
于 2015-10-07T10:59:13.200 回答