我希望鼠标处于关闭状态或关闭状态
document.onmousemove = mouseMove;
document.onmousedown = mouseDown;
document.onmouseup = mouseUp;
function mouseMove(ev) {
mouseState="";
//How can I know the state button of mouse button from here
if(mouseState=='down') {
console.log('mouse down state')
}
if(mouseState=='up') {
console.log('mouse up state')
}
}
function mouseDown(ev) {
console.log('Down State you can now start dragging');
//do not write any code here in this function
}
function mouseUp(ev) {
console.log('up state you cannot drag now because you are not holding your mouse')
//do not write any code here in this function
}
当我移动鼠标时,程序应该在控制台上向上或向下显示所需的mouseState值
答案 0 :(得分:3)
您可以查看MouseEvent.which
属性。
function mouseMove(ev) {
if(ev.which==1) {
console.log('mouse down state with left click');
} else if(ev.which==3) {
console.log('mouse down state with right click');
} else {
console.log('mouse update');
}
}
答案 1 :(得分:2)
你只需要为它创建一个变量。
document.onmousemove = mouseMove;
document.onmousedown = mouseDown;
document.onmouseup = mouseUp;
var mouseState = "up";
function mouseMove(ev) {
//How can I know the state of mouse from here
if(mouseState=='down') {
console.log('mouse down state')
}
if (mouseState=='up') {
console.log('mouse up state')
}
}
function mouseDown(ev) {
mouseState = "down";
console.log('Down State you can now start dragging');
//do not write any code here in this function
}
function mouseUp(ev) {
mouseState = "up";
console.log('up state you cannot drag now because you are not holding your mouse')
//do not write any code here in this function
}
您应该通过将其登录到控制台来查看“mousemove”上的事件。那里可能有一个属性显示鼠标的状态,就像按键事件有一个属性,告诉你是否按下了shift按钮。但这可能不是跨浏览器兼容的。