在javascript中同时捕获鼠标左键和右键

ber*_*436 3 javascript

在javascript中捕获鼠标左键和右键的最佳方法是什么?我没有使用jQuery(它是我的学习列表中的下一个),现在只是javascript.基本上,我想做点什么

 onClick()=javascript:rightClickFunction() // do right click function
 onContextMenu()=javascript:leftClickFunction() /
 onBoth() ???
Run Code Online (Sandbox Code Playgroud)

我在stackoverflow上唯一能找到的是: 如何用jQuery区分鼠标左键和右键

我该如何捕获双击按钮?在R和L按钮例程期间,我是否可以检查是否还单击了相反的按钮?

Ell*_*lle 11

您可以使用一些布尔变量跟踪哪些鼠标按钮向下:

var leftButtonDown = false;
var rightButtonDown = false;

$(document).mousedown(function() {
    if(e.which == 1) {
        leftButtonDown = true;
    } else if (e.which == 3) {
        rightButtonDown = true;
    }
});

$(document).mouseup(function() {
    if(e.which == 1) {
        leftButtonDown = false;
    } else if (e.which == 3) {
        rightButtonDown = false;
    }
});

$(document).click(function() {
    if(leftButtonDown && rightButtonDown) {
        // left and right buttons are clicked at the same time
    }
});
Run Code Online (Sandbox Code Playgroud)

如果两个布尔都为真,则单击鼠标左键和左键.