css:left,posLeft,pixelLeft

  •   2009-07-31/13:16
  • <SCRIPT LANGUAGE="JavaScript" src=">
    <SCRIPT LANGUAGE="JavaScript">
    <!–
    $(function(){
    alert(   $("#re").css("left")  +  "  "  +   $("#re").get(0).style.posLeft +"  "+  $("#re").get(0).style.pixelLeft )
    })
    //–>
    </SCRIPT>
    <div id="re" style="  position : absolute ; left:200px;">aaaaaaa</div>

    =========================
    对比下:
    $("#re").css("left")    :  返回200px,
    $("#re").get(0).style.posLeft  :返回200,
    $("#re").get(0).style.pixelLeft   :返回200,
    所以后面2个适合于 计算, 因为没有单位  ,很适合计算.
    那么posLeft  和pixelLeft   又有什么区别呢?
    概念东西不说了  举个例子吧,
    比如我把div的left改成 left:200em;

    程序代码

    <div id="re" style="  position : absolute ; left:200em;">aaaaaaa</div>

    这时候
    left: 200em;
    posLeft  返回: 200 ;
    pixelLeft   返回 : 4267 ;
    所以
    left 是字符串,是取html中left的值.
    posLeft 就是将left的值转化为数值类型,而且是浮点型 . (不带单位)
    pixelLeft 是数值,是将left的值(如果是空串则赋为0)转化为像素值.. (不带单位)。
    由于上面属性只支持 ie.(所以不建议使用)
    建议使用
    $("#re").get(0).offsetLeft
    这个属性通用.
    jquery1.2以后支持:
    $("p").offset().left  
    <SCRIPT LANGUAGE="JavaScript">
    <!–
        $(function(){
    var p = $("p");
    var offset = p.offset();
    p.html( "left: " + offset.left + ", top: " + offset.top );
        })
    //–>
    </SCRIPT>
    <br/><br/><br/><br/>
    <p>aaa</p>


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多