对于定位问题,特别是在不用table,只用div之后,精确控制div就更为重要了,可是屋漏又逢连夜鱼,如今又发现了IE和Firefox存在很大的差异,哎~~~~
今天发现相对定位offsetLeft,offsetTop,之间的差异,于是记之。(以下均以offsetLeft为例)
在IE中obj.offsetLeft是当前对象对上body对象的位移, 可是在Firefox里中,obj.offsetLeft中争对其父节点的,了解其存在的差异之后,可以使用如下代码解决之,
function getOffsetLeft(o)
{
var left=0;
var offsetParent = o;
while (offsetParent!=null && offsetParent!=document.body)
{
left+=offsetParent.offsetLeft;
offsetParent=offsetParent.offsetParent;
}
return left;
}
在IE 7.0 与 FireFox 2.0.0.6 下测试通过,如果发现问题请联系.
谢谢观看,再见!
今天发现相对定位offsetLeft,offsetTop,之间的差异,于是记之。(以下均以offsetLeft为例)
在IE中obj.offsetLeft是当前对象对上body对象的位移, 可是在Firefox里中,obj.offsetLeft中争对其父节点的,了解其存在的差异之后,可以使用如下代码解决之,
function getOffsetLeft(o)
{
var left=0;
var offsetParent = o;
while (offsetParent!=null && offsetParent!=document.body)
{
left+=offsetParent.offsetLeft;
offsetParent=offsetParent.offsetParent;
}
return left;
}
在IE 7.0 与 FireFox 2.0.0.6 下测试通过,如果发现问题请联系.
谢谢观看,再见!