1 事件获取
事件的位置主要涉及clientX,clientY,screenX,screenY,offsetX,offsetY 。
1.1offsetX,offsetY鼠标相对于事件源元素(srcElement)的X,Y坐标。
1.2event.screenX、event.screenY鼠标相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性
1.3 event.clientX、event.clientY鼠标相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。标准事件和IE事件都定义了这2个属性。
2 获取页面元素绝对位置函数 2.1 浏览器左角离屏幕左角距离window.screenTop window.screenLeft
#mydiv {
border: 2px solid black;
width: 640px;
height: 360px;
}
获取
function get(){
alert(window.screenTop)
alert(window.screenLeft);
var div = document.getElementById('mydiv');
var clientHeight = div.clientHeight;
var clientWidth = div.clientWidth;
div.innerHTML = '';
div.innerHTML += 'clientHeight: ' + clientHeight + '';
div.innerHTML += 'clientWidth: ' + clientWidth + '';
var clientLeft = div.clientLeft;
var clientTop = div.clientTop;
div.innerHTML += 'clientLeft: ' + clientLeft + '';
div.innerHTML += 'clientTop: ' + clientTop + '';
var offsetHeight = div.offsetHeight;
var offsetWidth = div.offsetWidth;
div.innerHTML += 'offsetHeight: ' + offsetHeight + '';
div.innerHTML += 'offsetWidth: ' + offsetWidth + '';
var offsetLeft = div.offsetLeft;
var offsetTop = div.offsetTop;
div.innerHTML += 'offsetLeft: ' + offsetLeft + '';
div.innerHTML += 'offsetTop: ' + offsetTop + '';
var offsetParent = div.offsetParent;
div.innerHTML += 'offsetParent: ' + offsetParent.id + '';
}
2.2 结果