我的JavaScript代码:
var a = '10',
b = '20';
$("#block").animate({
marginLeft: a + b
}, 500 );
为什么它不能正常工作?
答案 0 :(得分:4)
您正在添加字符串,marginLeft设置为1020
而不是30
。
答案 1 :(得分:2)
因为你的变量声明中的数字都有引号,所以你要把它们作为字符串。这使a+b
=`1020
现在您可能还有一个问题,即您的marginLeft
需要有单位声明(例如px)。
所以你应该$("#block").animate({ 'marginLeft': (parseInt(a)+parseInt(b))+'px'}, 500 );
答案 2 :(得分:0)
看看这个:
string + string = string
'10' + '20' = '1020'
number + number = number
10 + 20 = 30
string - (-string) = number
'10' - (-'20') = 30
number + string = string
10 + '20' = '1020'