关于offsetTop、offsetLeft的小心得,如有错误,敬请指出,共勉,谢谢。
1.当有定位父级时
(1)当前元素有定位时,offsetTop、offsetLeft 指当前元素到最近定位父级的偏移量
(2)当前元素没有定位时,在ie6、ie7下,指到body的偏移量,其他浏览器同上
2.当没有定位父级时,offsetTop、offsetLeft 可以理解为到当前元素的offsetParent的偏移量
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>offsetTop</title>
<style>
body{
margin: 0;
padding: 0;
}
#div1{
margin: auto;
padding: 20px;
background: blueviolet;
}
#div2{
padding: 30px;
background: yellow;
position: relative;
}
#div3{
padding: 40px;
background: salmon;
}
</style>
<script>
window.onload=function () {
var div=document.getElementsByTagName(‘div‘);
alert(div[2].offsetTop);//div3没有定位时,ie6 ie7 弹出 50,其他浏览器弹出30
}
</script>
</head>
<body id="myBody">
<div id="div1">
<div id="div2">
<div id="div3"></div>
</div>
</div>
</body>
</html>
原文:http://www.cnblogs.com/chuqin/p/5726772.html