我想将20px添加到自动生成的属性的宽度。 我发现这篇文章,但我似乎无法找到适合我的问题的解决方案。 Javascript (+) sign concatenates instead of giving sum of variables
这是我的代码:
settings.autowidth ? $(self).width() : settings.width;
settings.autowidth = true,所以这将返回$(self).width(),这是151px。
当我想像这样添加20像素时,我得到15120px
settings.autowidth ? $(self).width()+'20px' : settings.width;
上述链接中的解决方案说我需要添加一些括号,但我不知道放在哪里。
答案 0 :(得分:3)
不需要px
。
当你添加px
和引用'
时,你要说的是在这种情况下添加宽度'20px'
150,这样你最终会添加两个字符串。
要将树状结构化为数字,请删除引号'
和px
。
settings.autowidth ? $(self).width() + 20 : settings.width;
答案 1 :(得分:1)
您正在尝试使用数字计算字符串。
基本上你是这样做的:
"string" + 150
哪会导致"string150"
;
正确的做法是:
settings.autowidth ? $(self).width() + 20 : settings.width;
答案 2 :(得分:1)
$(self).width()
的值不是字符串"151px"
,而是151
的数字。
只需将20
添加到号码:
settings.autowidth ? $(self).width() + 20 : settings.width;
如果您希望采用"171px"
格式,则将px
添加到其中:
settings.autowidth ? ($(self).width() + 20) + 'px' : settings.width;
答案 3 :(得分:0)
您可以使用一点实用功能:
auto generate value property = true