来自android webview的鼠标按下事件

时间:2017-05-03 14:34:51

标签: javascript android webview leaflet

我有一些javascript代码,可以在传单地图中使用鼠标事件拖动一个圆圈,可以在不在android webview中的网页中工作,我的代码如下所示:

var isDragCircle = true;
map.on('mouseup', function (){
    isDragCircle = false;
    //showAndroidLog('mouse up event');
});

circle.on('mousedown', function (event) {
    isDragCircle = true;
    //showAndroidLog('mouse down event');
    //L.DomEvent.stop(event);
    map.dragging.disable();
    let {lat: circleStartingLat, lng: circleStartingLng} = circle._latlng;
    let {lat: mouseStartingLat, lng: mouseStartingLng} = event.latlng;

    map.on('mousemove', event => {
        if (isDragCircle) {
            let {lat: mouseNewLat, lng: mouseNewLng} = event.latlng;
            let latDifference = mouseStartingLat - mouseNewLat;
            let lngDifference = mouseStartingLng - mouseNewLng;

            let center = [circleStartingLat-latDifference, circleStartingLng-lngDifference];
            circle.setLatLng(center);
        };

    });
});

在我的资产文件夹中的index.html中尝试这个,但是在webview中没有触发mousedown事件,我的目标是从android webview拖动传单圈。

注意:没有尝试使用usb otg鼠标,但我猜测如何用触摸事件来实现这一点。

编辑: 仍然尝试但没有结果拖动一个圆圈,临时使用点击事件来改变圆坐标,如下所示:

map.on('click', function (e){
    if (circleDrawn) {
        circle.setLatLng(e.latlng);
    };
});

编辑:只需阅读传单文档support tap(作为contextmenu事件触发)。

0 个答案:

没有答案