各位,为什么我在JS中取DIV元素的offsetLeft总是0,但offsetTop就是正确的值有谁知道请帮帮忙啊!!ps:代码不是在IE,也不是FF下,是一个移植在嵌入式设备中的浏览器。

解决方案 »

  1.   

    取元素的位置需要一直递归到body元素为止,参见:http://www.easyui.org.cn/#getPosition
      

  2.   

    offsetLeft的取值和style.position有关系,如果将style.position设置为relative,则其取值依赖于
    父节点的位置,如果设置为absolute,则其值为到窗口边界的像素宽度。
      

  3.   

    赞同var getLeft=function(obj){
    var offset=obj.offsetLeft;
    if(obj.offsetParent!=null) offset +=getLeft(obj.offsetParent);
    return offset;
    };