Определение того, находится ли положение мыши рядом с краями браузера
-
21-09-2019 - |
Вопрос
В браузере я пытаюсь определить, находится ли точка, представляющая позицию мыши в том, что я называю «внешней областью». Например, на прикрепленном изображении внешняя область - такая с синим фоном.
В коде и изображении w представляет ширину просмотра браузера, в то время как H представляет высоту, а x, y для положения мыши
Прямо сейчас я использую этот кусок кода, чтобы сделать это:
if (((x>0 && x<w1) || (x>w2 && x<W))
||
((x>w1 && x<w2) &&
((y>0 && y<h1) || (y>h2 && y<H))
))
console.log("we are in the outer area")
Пока это работает так, как есть, мне интересно, есть ли в этом лучший способ?
Решение
Вам не нужно проверять, более ли это 0 и меньше, чем W, поскольку положение указателя X не может быть меньше 0 или более W. То же самое относится и к оси Y. Следующего должно быть достаточно:
if((x>w2 || x<w1) || (y>h2 || y<h1)){
console.log("We are in the outer area");
}
Другие советы
Вы можете обернуть всю свою страницу в Div (называется outer
) и затем подключиться к hover
мероприятие.