我已经定义了map.on('click',onClick)
事件,但是当有人使用zoomBox处理程序(Shift +绘图缩放框)时它也会触发
function onClick(e) {alert(e.latlng);}
e.type
始终是“点击”
我正在使用宣传单版本0.5.1 。
我该如何避免这种情况?
提前致谢
答案 0 :(得分:1)
我认为你发现了一个错误!我发现这个 bug 只出现在IE 10中,不仅仅是0.5.1,而且0.6也有同样的问题。您可以report a bug到Leaflet issue tracker。
现在,暂时,您可以跟踪mousedown
点并与click
点进行比较,以确定是否移动了光标。
var mousedownPoint; // global
map.on('mousedown', function (e) {
mousedownPoint = e.containerPoint;
});
map.on('click', function (e) {
if (!e.containerPoint.equals(mousedownPoint)) {
return;
}
// DO WHAT YOU WANT
});