Javascript 如何使用自己的html按钮控制传单?

Javascript 如何使用自己的html按钮控制传单?,javascript,leaflet,leaflet.draw,Javascript,Leaflet,Leaflet.draw,我使用传单和传单画的一页,我的工作。我想使用自己的地图外按钮,而不是地图上的经典传单绘制控件。我找不到一个例子来说明这是如何做到的,或者这是否可能。如何将地图上按钮上的功能链接到我自己的地图外按钮 因此,基本上我会在地图下方(而不是地图上)有一个按钮,可以放大(我假设同样的方法也适用于传单绘制控件)。这感觉应该很容易,但就像我说的,我不知道怎么做 代码附加了一个单击处理程序来调用映射的方法: document.querySelector("#zoom").onclick = function(

我使用传单和传单画的一页,我的工作。我想使用自己的地图外按钮,而不是地图上的经典传单绘制控件。我找不到一个例子来说明这是如何做到的,或者这是否可能。如何将地图上按钮上的功能链接到我自己的地图外按钮

因此,基本上我会在地图下方(而不是地图上)有一个按钮,可以放大(我假设同样的方法也适用于传单绘制控件)。这感觉应该很容易,但就像我说的,我不知道怎么做

代码附加了一个单击处理程序来调用映射的方法:

document.querySelector("#zoom").onclick = function() {
    map.setZoom(Math.ceil(18*Math.random()));
}

从中,有许多函数可以修改地图的状态。希望这有帮助

正如你已经提到的,答案已经在那里了。唯一需要做的就是添加ventListeners并创建相关函数。如果要触发多段线绘制并分别取消该绘制,请参见以下示例:

html


谢谢Sunny Pun的回答。是的,这对缩放肯定有效,但是使用传单绘制控件呢?所以有人已经回答了这个问题。
<div id="map"></div>
<button id="drawPolyline">Draw</button>
<button id="cancelDraw">Cancel Draw</button>
// add an event listener to trigger polyline draw
document
  .getElementById("drawPolyline")
  .addEventListener("click", e => drawPolyline(e));

// add an event listener to cancel polyline draw
document
  .getElementById("cancelDraw")
  .addEventListener("click", e => cancelDraw(e));

// declare a global variable to store a reference
let polylineDrawHandler;

// store the polyline draw instantiation to a variable to be able 
// to disable it later
const drawPolyline = e => {
  polylineDrawHandler = new L.Draw.Polyline(map, drawControl.options.polyline);
  polylineDrawHandler.enable();
};

const cancelDraw = e => polylineDrawHandler.disable();