您的位置:首页 > Web前端 > JavaScript

js获取鼠标位置和滚动条位置

2012-08-21 12:24 267 查看
1相对窗口,当然是以浏览器窗口为主了,即浏览器中可见部分(即包含文档部分)的左上角为坐标原点。这是用clientX和clientY获取的。

2相对屏幕,当然是以你的显示器为主了,显示器的左上角为原点,用screenX和screenY可以获取到

3相对文档的,即以文档BODY所显示的左上角为原点,例如当一个DIV的position="absolute"时设left="100px" top="100px"那么无论你如何变换浏览器,虽然它显示的位置在变但他在文档中的位置是不变的。一般用document.body.scrollLeft+event.clientX和document.body.scrollTop+event.clientY来获取

而offsetX解释说是事件产生的位置和鼠标位置的偏移量,没太理解,我也是初学。

而你说改变分辨率坐标改变,这是必然的。因为在不同的分辨率下网页的显示样式不同,这不是坐标改变的主要原因,主要还是因为度量的改变,如:无论屏幕的分辨率怎么改屏幕大小是不变的,但它代表的显示逻辑长度改变了,如1024×768和800×600,同样宽度的屏幕被当成1024个长度单位来用和当成800个长度单位来用当然会不同,当你点击屏幕的中央时前者返回的是1024/2而后者返回的是800/2.所以坐标值会改变。就像你用米尺量是1米,用寸尺量是3寸,一个是1,一个是3一样的道理。

获取坐标: IE (event.x event.y)

获取滚动条位置:

document.body.scrollTop (滚动条离页面最上方的距离)

document.body.scrollLeft (滚动条离页面最左方的距离)

当网页最前面有以下内容:

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

document.documentElement.scrollTop (滚动条离页面最上方的距离)

document.documentElement.scrollLeft (滚动条离页面最左方的距离)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: