我知道 jQuery 有一个帮助器方法,可以将单位字符串解析为数字。用什么 jQuery 方法来做这件事?
var a = "20px"; var b = 20; var c = $.parseMethod(a) + b;
var c = parseInt(a,10);
不需要 jQuery,普通的 Ol’JS (tm)就可以了,
parseInt(a, 10);
$.parseMethod = function (s) { return Number(s.replace(/px$/, '')); };
虽然这和 jQuery 有什么关系,我不知道
更一般地说,parseFloat会正确处理浮点数,而 parseInt可能会悄无声息地丢失有效数字:
parseFloat
parseInt
parseFloat('20.954544px') > 20.954544 parseInt('20.954544px') > 20
$(document).ready(function(){<br> $("#btnW1").click(function(){<br> $("#d1").animate({<br> width: "+=" + x, }); });
在使用 jquery 标识像素值的变量 x 时,我将 + = 放在引号中。而不是有宽度:’+ = x’,这不起作用,因为它认为 x 是一个字符串,而不是一个数字。希望这能帮上忙。
很抱歉我们要挖掘,但是:
var bar = "16px"; var foo = parseInt(bar, 10); // Doesn't work! Output is always 16px // and var foo = Number(s.replace(/px$/, '')); // No more!