【问题标题】:Which function called when click on leaflet draw controls(poly,rect etc) : leaflet单击传单绘制控件(多边形,矩形等)时调用哪个函数:传单
【发布时间】:2015-10-07 10:49:57
【问题描述】:

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

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

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

map.on('click', 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 新手,一些理解问题仍然存在。如果有人知道,请帮助,提前致谢。

【问题讨论】:

    标签: javascript leaflet leaflet.draw


    【解决方案1】:

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

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

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

    map.on('draw:drawstart', function () {
        map.off('click', mapClickHandler);
    });
    

    【讨论】:

    • 感谢回复,我的意思是当我点击我的自定义控件然后它的'on',,但是现在当我点击绘制控件时,我的自定义控件应该是'off'..所以在哪里把那个'关闭'方法
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 2015-07-10
    • 2017-06-25
    • 2019-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多