可以通过js中的even对象获取当前位置,但是这个位置表示的是对应窗口位置,如果页面有滚动条,那还需要加上滚动填的位置,所以需要用到document.documentElement.scrollLeft 和document.documentElement.scrollTop 。
其中,document.documentElement.scrollLeft 表示获取页面滚动条X轴位置;
document.documentElement.scrollTop 表示获取页面滚动条Y轴位置;
在火狐浏览器中有page对象,无需用到,但在去其他浏览器中,却需要用到。
火狐浏览器中使用page,来获取横纵轴位置。
下面就是一个实例:
function getMousePos(event) {
var e = event || window.event; var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft; var scrollY = document.documentElement.scrollTop || document.body.scrollTop; var x = e.pageX || e.clientX + scrollX; var y = e.pageY || e.clientY + scrollY; return { 'x': x, 'y': y }; }
注:有的地方也用document.body.scrollLeft,document.body.scrollTop来获取滚动条位置,但我测试了一下,发现效果不是很明显。