2015-06-13 18 views
5

Muszę zaimplementować ruch myszy tylko po naciśnięciu przycisku myszy.jak wykonać mousemove gdy mouseDown naciśnięty js

Muszę wykonać "OK przeniesiony" tylko wtedy, gdy mysz w dół i ruch myszy.

Kiedyś ten kod

$(".floor").mousedown(function() { 
    $(".floor").bind('mouseover',function(){ 
     alert("OK Moved!"); 
    }); 
}) 
.mouseup(function() { 
$(".floor").unbind('mouseover'); 
}); 

Odpowiedz

11

Użyj zdarzenie mosemove.

Od mousemove i mouseover jquery docs:

Impreza mousemove jest wysyłany do elementu, gdy kursor myszy wewnątrz elementu.

Zdarzenie mouseover jest wysyłane do elementu, gdy wskaźnik myszy znajdzie się w elemencie.

Przykład: (wyjście konsola check)

$(".floor").mousedown(function() { 
    $(this).mousemove(function() { 
     console.log("OK Moved!"); 
    }); 
}).mouseup(function() { 
    $(this).unbind('mousemove'); 
}).mouseout(function() { 
    $(this).unbind('mousemove'); 
}); 

https://jsfiddle.net/n4820hsh/

+0

gdy u kliknij w polu po raz pierwszy i przesunąć mysz działa dobrze, ale gdy u przesunąć mysz ponownie bez wciśniętego przycisku działa również! na to cierpię: 3. Muszę pracować tylko po naciśnięciu i poruszeniu myszą. – M1M6

+0

edytowane: potrzebuję się odłączyć także po opuszczeniu pudełka. Teraz powinno działać tylko wtedy, gdy wciśniesz mysz wewnątrz pudełka i wprowadzisz się do środka. –

+0

to działa dobrze :) dziękuję uuuuuu :) – M1M6

Powiązane problemy