- HTML code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>无标题文档</title> <script type="text/javascript"> window.onload=function() { [color=#FF0000]//在ie上取到的是5,可在火狐上取到的是 284,这差距也太大了把?? //offsetLeft 不是取这个元素距父元素的左边距离吗??[/color] alert(document.getElementById("borderDivII").offsetLeft); }; </script> </head> <body> <div style="float:left;width:270px;height:200px"> d </div> <div style="float:left;width:460px;height:200px;border:cyan solid 1px;"> <div id="borderDivII" style="width:98%;height:50px;border:gray Dashed 1px;margin:5px 5px 5px 5px;"></div> </div> </body> </html>
//在ie上取到的是5,可在火狐上取到的是 284,这差距也太大了把??
//offsetLeft 不是取这个元素距父元素的左边距离吗??
------解决方案--------------------
offsetTop
获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算顶端位置。
offsetLeft
获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。
offsetHeight
获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度。
IE、Opera 认为 offsetHeight = clientHeight + 滚动条 + 边框。
NS、FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。
offsetWidth
获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度。
offsetParent
获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用
------解决方案--------------------
http://www.cnblogs.com/panjun-Donet/articles/1294033.html
你看看这里面介绍的你就会明白怎么回事
------解决方案--------------------
IE:
var op = document.getElementById("borderDivII");
var oleft = op.offsetLeft;
while(op.offsetParent!=null){
op = op.offsetParent;
oleft += op.offsetLeft;
}
alert(oleft);
------解决方案--------------------
------解决方案--------------------
这里我说的有点歧义了,应该说你的DIV的容器是BODY