у меня есть некоторый простой JavaScript, который определяет, где щелчок происходит в браузере здесь:Определить мыши для всех разрешений экрана
var clickDoc = (document.documentElement != undefined && document.documentElement.clientHeight != 0) ? document.documentElement : document.body;
var x = evt.clientX;
var y = evt.clientY;
var w = clickDoc.clientWidth != undefined ? clickDoc.clientWidth : window.innerWidth;
var h = clickDoc.clientHeight != undefined ? clickDoc.clientHeight : window.innerHeight;
var scrollx = window.pageXOffset == undefined ? clickDoc.scrollLeft : window.pageXOffset;
var scrolly = window.pageYOffset == undefined ? clickDoc.scrollTop : window.pageYOffset;
params = '&x=' + (x + scrollx) + '&y=' + (y + scrolly) + '&w=' + w + '&random=' + Date();
Все эти данные сохраняется в БД. Позже я получаю его и показываю, где все клики произошли на этой странице. Это отлично работает, если я делаю все мои клики в одном разрешении, а затем отображать его обратно в том же разрешении, но это не так. могут использоваться большие количества разрешений.
В моем тестовом примере я нажал на экран с разрешением экрана 1260x1080. Я извлек все данные и отобразил их в том же разрешении. Но когда я использую другой монитор (пробовал 1024x768 и 1920x1080.Метки смещаются в неправильное место.
Мой вопрос: если я храню ширину и высоту клиента и позицию x/y клика Если 3 разных пользователя с разными разрешениями экрана нажимают на одно и то же слово, а четвертый пользователь просматривает, где все эти клики произошли, как я могу правильно построить положение x/y, чтобы показать, что все нажали в одном пространстве, не имеет значения разрешения?
Если это относится в лучшем разделе, пожалуйста, дайте мне знать, как хорошо.
::: EDIT ::: После применения предложения Брока, я приложил два скриншота. Я нажал наслово «если» в начале каждого абзаца в разных разрешениях. При просмотре в обоих разрешениях клики, которые произошли в одном и том же разрешении, прямо на слове, когда это более высокое или низкое разрешение, оно смещается вправо или влево соответственно.
http://img291.imageshack.us/img291/5682/1260x1080.png http://img27.imageshack.us/img27/8950/1920x1080c.png
Я не знаю ваших требований, но если это возможно для вас, подумайте о том, что запись пути элемента DOM была нажата, а не мыши. –
Из этих снимков экрана он СМОТРЕТЬ, как поля разные. Опубликовать весь снимок экрана или - еще лучше - ссылку на страницу. Ниже я расскажу о своем ответе. –