Как определить направление движения мыши? [закрыто]Javascript

Форум по Javascript
Anonymous
Как определить направление движения мыши? [закрыто]

Сообщение Anonymous »

В настоящее время для определения направления движения мыши используйте следующую цитату:

Код: Выделить всё

window.addEventListener("mousemove", function (e) {

if (time > Date.now() - 100) return
time = Date.now();

var movementX = e.movementX;
var movementY = e.movementY;
if (movementX < 0) {
// left
} else if (movementX > 0) {
// right
} else if (movementY < 0) {
// up
} else if (movementY > 0) {
// down
}
});
Но он перестает работать при достижении одной стороны экрана, в этом случае motionX или motionY равны нулю и мои условия перестают работать. Например, курсор достиг левой части окна. Пользователь пытается переместить курсор влево, но я не могу это обнаружить — motionX равен 0.
Пожалуйста, взгляните на пример кода — просто переместите курсор в крайнее левое положение, а затем переместите его влево дальше, вы увидите, что новых записей в консоли не будет. Вы пытаетесь переместить курсор влево снова и снова, но код этого не обнаруживает.
Я пытался отменить движение по умолчанию (

Код: Выделить всё

e.preventDefault()
) и всегда удерживать курсор в центре, отправляя еще одно событие движения мыши. Но это не работает.
Что еще мне следует учитывать?

Подробнее здесь: https://stackoverflow.com/questions/793 ... -direction

Вернуться в «Javascript»