Пример с некоторой визуальной подсказкой будет действительно полезен.
В чем разница между pageX/Y clientX/Y screenX/Y в Javascript?
Ответ 1
Визуальные подсказки представляют:
Экран → полный экран монитора (screenX/Y)
Позиция всегда будет относиться к физическому экрану просмотра.
Клиент → окно просмотра клиента браузера (clientX/Y)
Если вы щелкните в левом верхнем углу, значение всегда будет (0,0) независимым от положения прокрутки.
Документ → полный документ/страница (pageX/Y)
Обратите внимание, что pageX/pageY объекта UIEvent не стандартизированы.
Все значения находятся в пикселях.

Ответ 2

КЛИЕНТ → Окно браузера
clientX clientY= значения (px) положения мыши относительно границ окна просмотра браузера.
<Суб > Совет:
Даже если вы прокручиваете документ, значения всегда одинаковы
PAGE → Весь документ
pageX pageY= значения (px) положения мыши относительно сторон документа "Самый верхний/левый".
<Суб > Совет:
Если вы прокрутите документ (i.e) по вертикали, значение pageY изменится, это приведет к появлению новой верхней позиции мыши в вашем документе.
Также стоит отметить, что: event.pageY - event.clientY === document.documentElement.scrollTop (или jQuery $("html, body").scrollTop())
SCREEN → Ваш экран
screenX и screenY - значения (px) текущей позиции мыши относительно физического экрана .
(Нет подсказки для этого;))
Ответ 3
Как правило, различия заключаются в следующем:
- page x/y: координата x или y как относительная относительно полностью отображаемой страницы (т.е. она учитывает всю высоту и ширину страницы/документа, а не только то, что в настоящее время отображается на экране)
- screen x/y: координата x или y относительно физического экрана.
- client x/y: координата x или y относительно окна клиента (браузера) (или iframe внутри окна.
Здесь - это страница, где вы можете протестировать различия динамически.