Javascript onmouseUp没有保持

时间:2014-12-17 23:16:26

标签: javascript jquery

我已经设置了事件监听器onmouseUp。

我希望在短时间内(只需点击一下)和onmouseUp之间区分onmouseUp,然后保持让我们说多于一秒或onmouseDown与mouseMove一起。

原因:

我正在收听第2号按钮(= = 2),我希望能够通过按住按钮2并向上/向下移动鼠标来点击某个功能并缩放内容。但不是一次性做到这一点。

在JS或jQuery中是否可以使用任何集成方法?

2 个答案:

答案 0 :(得分:2)

NOW

上获取Mouse Down

NOW

上获取Mouse Up
var start = 0;
$('#button').mousedown(function () {
    start = $.now();
});
$('#button').mouseup(function () {
    end = $.now();
    $('#output').html(end - start);
    if (end - start > 1000) {
        alert('you just held the mouse for 1 second');
    }
});

DEMO

答案 1 :(得分:0)

您可以测量鼠标启动前操作所花费的时间:

E.g:

$(<your_element>).on(<your_event_type>, function(e) {
    start = new Date().getTime();
});

然后为其他事件类型执行类似操作并计算stop值。

计算差异stop - start并做出决定。

这也将涵盖按下单击时移动鼠标的情况(因为它大于指定的阈值)。但是,如果要检查鼠标是否已移动,可以使用其坐标(e.pageXe.pageY)。