Javascript onscroll и положение мыши - PullRequest
1 голос
/ 10 апреля 2010

У меня есть скрипт, который запускает addEventListener для onmousemove и прокручивает текст в теле документа, чтобы получить позицию курсора. Событие onmousemove работает нормально (client + scroll), однако, когда происходит событие onscroll, clientX / Y, кажется, вместо этого наследует значения scrollTop / Left (только scroll). Есть ли способ обойти это?

clickDocument = (document.documentElement != undefined && document.documentElement.clientHeight != 0) ? document.documentElement : document.body;

var posx = 0;
var posy = 0;
if (e.pageX || e.pageY)     {
    posx = e.pageX;
    posy = e.pageY;
}
else if (e.clientX || e.clientY)    {
    posx = e.clientX;
    posy = e.clientY;
}

var scrollx = window.pageXOffset == undefined ? clickDocument.scrollLeft : window.pageXOffset;
var scrolly = window.pageYOffset == undefined ? clickDocument.scrollTop : window.pageYOffset;

1 Ответ

0 голосов
/ 10 апреля 2010

В зависимости от версии браузера IE и типа документа иногда требуется clickDocument.body.scrollTop или даже clickDocument.documentElement.scrollTop.

(Источник: http://javascript.about.com/library/blmousepos.htm)

...