Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Jquery从属性样式元素而不是像素元素中获取百分比值_Jquery_Html - Fatal编程技术网

如何使用Jquery从属性样式元素而不是像素元素中获取百分比值

如何使用Jquery从属性样式元素而不是像素元素中获取百分比值,jquery,html,Jquery,Html,我想在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 styl

我想在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>
控制台显示此
772px

尝试此控制台:

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

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

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

看看:

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

JSFIDLE:

没有看到abc123关于使用本机DOM访问属性的注释…+1。我相信这是最好的solution@koala_dev没关系,我得到了我的2个赞成票:“钱,我相信Cherniv用他的方法产生了一个更好的解决方案,你应该把他当作公认的答案。
var c = $('#rows td').last().get(0);
console.log( c.style.right );