From 13ddf592cff199e1889af20aa6310a69e25a8658 Mon Sep 17 00:00:00 2001 From: ClemensSahs Date: Sat, 11 Mar 2017 13:50:45 +0100 Subject: [PATCH] fix mouseInput when window is scrolled --- src/examples/inputs/MouseInput.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/examples/inputs/MouseInput.js b/src/examples/inputs/MouseInput.js index c28a4ab..85f858d 100644 --- a/src/examples/inputs/MouseInput.js +++ b/src/examples/inputs/MouseInput.js @@ -362,9 +362,14 @@ class MouseInput extends Module { _getRelativeMouseCoords(screenMouseCoords) { const containerRect = this._containerRect; + + // we need a scroll offset, too + var doc = document.documentElement; + var scrollTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0); + var scrollLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0); const relativeMouseCoords = screenMouseCoords.clone() - .sub(tempVector2.set(containerRect.left, containerRect.top)) + .sub(tempVector2.set(containerRect.left - scrollLeft, containerRect.top - scrollTop)) .divide(tempVector2.set(containerRect.width, containerRect.height)); // mouse.x = ( event.clientX / window.innerWidth ) * 2 - 1;