如 <font>I love this </font>
我如何得到font标签中的内容的起始left 和top

解决方案 »

  1.   

    var getPos=function(o){//取元素坐标
        var x = 0, y = 0;
        do{
            x += o.offsetLeft;
            y += o.offsetTop;
        }while(o=o.offsetParent);
        return {'x':x,'y':y};
    }
    这个函数可以取得元素的坐标
    alert(getPos(document.getElementById("定义的id")).x)
    alert(getPos(document.getElementsByTagName("font")[0]).y)
      

  2.   

    html: <font id="test" style="left:10px; top:100px;">I love this </font>Jquery 跨浏览器不需要改任何代码$(document).ready(function(){
    var left = $("#test").css("left");
    var top = $("#test").css("top");
    alert("left=="+left+"top=="+top)
    });
      

  3.   

    4楼这个只能取到style上的left和top
    正确的方法还是用1楼的
    或者想用jquery的话,可以用offset()函数
      

  4.   

    不是吧,即使没有style照样可以,只不过取到的是默认值auto而已,只要标签有top或者left就肯定可以取的到,而且jquery不用管异常处理
      

  5.   


    jquery取得是currentStyle上的left和top,主要是有很多复杂的情况取left是没有用的,比如说各种定位方式(position), scroll的情况等等
    我没有说不用jquery,我前面说的是如果用jquery的话,用offset()函数比较好