如何确定宽度是否有px或%

时间:2011-10-16 20:10:00

标签: javascript jquery css

如何判断宽度为ex:width:100%等css属性是否分配了px或%。 例如,如果我有width:250px;而我$('div').width()我获得250,而如果我使用百分比,我只是根据我的屏幕分辨率得到px的宽度百分比。< / p>

3 个答案:

答案 0 :(得分:14)

这应该有用。

var value = $('#id').get(0).style.width;
var hasPx = value.indexOf('px') >= 0;
var hasPct = value.indexOf('%') >= 0;

JSBin:http://jsbin.com/asewit/2/edit#javascript,html

答案 1 :(得分:9)

如果“css property”是指css规则,而不是直接在元素中设置的内联样式属性,则没有快速的方法来获取它。你必须:

  1. 查询所有css规则声明

  2. 循环遍历每个css规则并检查元素是否匹配     规则并将其推入数组

  3. 循环通过候选人并获取最新的宽度值,或者     最新宽度值!重要

  4. 如果你的意思是内联风格,它是如此微不足道,很难理解为什么这个问题得到了如此多的赞成:

    element.style.width并检查是否存在px或%

    编辑:这是css规则查询的不完整演示:

    http://jsfiddle.net/Chjnd/1/

    在google chrome和firefox中测试

答案 2 :(得分:3)

您可以使用.style.cssText,其中包含实际的CSS代码:

$("<div style='width:50px'>").get(0).style.cssText // "width: 50px; "
$("<div style='width:50% '>").get(0).style.cssText // "width: 50%; "