【问题标题】:How to get percent value from property style element not pixel one using Jquery [duplicate]如何使用Jquery从属性样式元素而不是像素一中获取百分比值[重复]
【发布时间】:2013-07-28 05:39:46
【问题描述】:

我想用 Jquery 获取百分比值属性元素,但我做不到。 我的元素是:

<tr id="rows">
    <td style="right:0%;"></td>
    <td style="right:20%;"></td>
    <td style="right:40%;"></td>
    <td style="right:60%;"></td>
    <td style="right:80%;"></td>
</tr>

我想用百分号获得正确的价值。 我使用了下面的方法,但返回的值是像素值:

$('#rows td').last().css('right');

控制台告诉我这个772px

【问题讨论】:

    标签: jquery html


    【解决方案1】:

    看看:

    var c = $('#rows td').last().get(0);
    console.log( c.style.right );
    

    JSfiddle:http://jsfiddle.net/93CxA/

    【讨论】:

    • +1 用于使用本地 DOM 访问属性。我相信这是最好的解决方案
    • @koala_dev 没关系 koalaman ,我有 2 个赞 :)
    【解决方案2】:

    您无法直接使用 jQuery 获取值,但在您的情况下,解决方案可能是使用正则表达式解析您的样式属性以匹配字符串中的数字

    var percentValue = $('#rows td').last().attr('style').match(/\d+/)+'%';
    

    Demo fiddle

    【讨论】:

    • @money,我相信 Cherniv 用他的方法产生了更好的解决方案,你应该考虑将他标记为接受的答案
    【解决方案3】:

    试试这个:

    var right = ( 100 * parseFloat($('#rows td').css('right')) / parseFloat($('#rows td').parent().css('right')) ) + '%';
    

    【讨论】:

    • 没看到abc123的评论...
    猜你喜欢
    • 1970-01-01
    • 2017-03-25
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-25
    相关资源
    最近更新 更多