繁体   English   中英

Javascript滚动和鼠标位置

[英]Javascript onscroll and mouse position

我有一个脚本,它在文档主体上为onmousemove和onscroll运行addEventListener来获取光标位置。 一个onmousemove事件工作正常(客户端+滚动),但是当发生onscroll事件时,clientX / Y似乎继承了scrollTop / Left值(仅滚动)。 有没有解决的办法?

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;

根据IE浏览器的版本和文档类型,有时您需要clickDocument.body.scrollTop甚至clickDocument.documentElement.scrollTop

(来源: http : //javascript.about.com/library/blmousepos.htm

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM