对于定位问题,特别是在不用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 下测试通过,如果发现问题请联系.
谢谢观看,再见!
本文探讨了在不同浏览器(IE与Firefox)中实现精确元素定位的方法。重点介绍了如何使用offsetLeft属性进行调整,并提供了一个兼容IE7.0与Firefox2.0.0.6的解决方案。
535

被折叠的 条评论
为什么被折叠?



