代码之家  ›  专栏  ›  技术社区  ›  fearofawhackplanet

如何在jQuery/javascript中获取边框宽度

  •  57
  • fearofawhackplanet  · 技术社区  · 15 年前

    如何从中解析边框宽度

    style="border: solid 1px black;"

    在jQuery/javascript中?

    $elem.css('border-width')

    注意,我需要从css中解析宽度,因为元素可能是 display:none

    编辑 实际上我并没有使用一个内嵌的样式,我只是为了简单而写的,因为我没有意识到有任何行为上的差异。它似乎可以很好地用于内联样式,但仍然无法从应用的css类中获得任何值。

    5 回复  |  直到 15 年前
        1
  •  96
  •   djdd87    15 年前

    你可以用 parseInt(); 分析边框宽度的步骤 Npx N :

    var width = $elem.css('borderWidth'); // 150px
    var parsed = parseInt(width);         // 150
    

    我有一个谷歌左右,似乎为了得到一个边界的宽度,你必须提供一个明确的边界边:

    var borderWidth = $elem.css("border-left-width");
    

    这是因为每个边框都有可能有不同的大小、样式和颜色。不幸的是,它似乎没有比这更简单。

        2
  •  9
  •   Ben Everard    15 年前

    jQuery不允许使用 - 当引用CSS属性时,请删除hypen并大写以下字母。

    $elem.css('borderWidth');
    

    Coded in jsFiddle to demonstrate .

        3
  •  8
  •   jedierikb grijalvaromero    12 年前
    var bordersOnBothSides = $("#measureMe").outerWidth() - $("#measureMe").innerWidth() );
    
        4
  •  7
  •   Bryan    14 年前

    <div style="border-style:solid;border-left-width:15px;"></div>
    

    在脚本中:

    var width =parseInt($('div').css('borderLeftWidth'),10);
    alert(width);
    
        5
  •  3
  •   Vasyl Gutnyk    9 年前

    elem.clientLeft; //get left border of element
    elem.clientTop; //get top border of element
    

    要获得正确的结果,请使用jquery+css:

    parseInt($(elem).css('borderLeftWidth'),10); // 10 use to get result in dec, not hex number system