关于js鼠标事件综合各大浏览器能获取到坐标的属性
1.page随滚动条变化(pageY会增加滚动条滚动的距离),兼容性:除IE6/7/8不支持外,其余浏览器均支持;
2.clientX/Y获取到的是触发点相对浏览器可视区域左上角距离(不随页面滚动而改变,clienY不会增加),兼容性:所有浏览器均支持;
3.screenX/Y获取到的是触发点相对显示器屏幕左上角的距离,不随页面滚动而改变,兼容性:所有浏览器均支持
//Jquery中的兼容PageX的代码如下
if ( event.pageX == null && event.clientX != null ) {
var doc = document.documentElement, body = document.body;
event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0);
}