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 + '
';
}
