jQuery / Javascript - 如何将像素值(20px)转换为数值(20)

时间:2010-06-11 15:30:27

标签: javascript jquery

我知道jQuery有一个帮助方法,用于将单元字符串解析为数字。执行此操作的jQuery方法是什么?

var a = "20px";
var b = 20;
var c = $.parseMethod(a) + b;

6 个答案:

答案 0 :(得分:168)

这不需要jQuery,Plain Ol' JS (tm)会做你的,

parseInt(a, 10);

答案 1 :(得分:26)

更一般地说,parseFloat会正确处理浮点数,而parseInt可能会默默地丢失有效数字:

parseFloat('20.954544px')
> 20.954544
parseInt('20.954544px')
> 20

答案 2 :(得分:5)

 var c = parseInt(a,10);

答案 3 :(得分:5)

$.parseMethod = function (s)
{
    return Number(s.replace(/px$/, ''));
};

虽然这与jQuery有什么关系,但我不知道

答案 4 :(得分:0)

很抱歉,但是:

var bar = "16px";

var foo = parseInt(bar, 10); // Doesn't work! Output is always 16px
// and
var foo = Number(s.replace(/px$/, '')); // No more!

答案 5 :(得分:-2)

$(document).ready(function(){<br>
    $("#btnW1").click(function(){<br>
        $("#d1").animate({<br>
            width: "+=" + x,

        });
    });

当尝试使用jquery通过像素值I识别变量x时,我将+ =放在引号中。而不是宽度:'+ = x',这不起作用,因为它认为x是一个字符串而不是一个数字。希望这会有所帮助。