JS获取鼠标的坐标和滚动条的位置

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   (滚动条离页面最左方的距离)

posted @ 2009-09-29 14:34  TOYOE  阅读(3727)  评论(0编辑  收藏  举报