Вот мой код:Detect Держите мышь-Click в Javascript
var mouseDown = false;
document.body.onmousedown = function() {
console.log("MOUSE DOWN");
mouseDown = true;
increaseRad();
}
document.body.onmouseup = function() {
console.log("MOUSE UP");
mouseDown = false;
}
function increaseRad(){
rad = 0;
while(mouseDown){
console.log("mouse is still down");
rad++;
console.log(rad)
}
}
Когда я нажимаю вниз, increaseRad
запускается, но цикл в то время как внутри никогда не заканчивается.
Любая идея, почему?
Я считаю, что ваша проблема заключается в том, что вы увеличиваете и уменьшаете значение для вашего mousedown, а не просто устанавливаете его в true/false, а затем проверяете, помогает ли это. –
Нет, это не имеет значения. Я полагал, что функция onmousedown выполняется асинхронно, поэтому значение установлено в значение 'true', и если оператор запущен. Но это не похоже на woek. –
. Дело в том, что ваш чек, чтобы увидеть, действительно ли мышь на самом деле вниз, кажется, называется один раз, это должно быть в своей собственной функции, чтобы отслеживать, когда вы ввели указатель мыши и когда вы ушли Это. Эта функция затем должна быть вызвана в вашем 'onmousedown'. –