Jquery使用css函数

Lin*_*nas 1 javascript jquery

所以我只是玩弄我的jquery并陷入了相当奇怪的问题.所以我得到像这样的div的宽度

block_width = $(".grid_block").css("width");
Run Code Online (Sandbox Code Playgroud)

现在我想用这个宽度做点什么吧

container_width = block_width * 21;
Run Code Online (Sandbox Code Playgroud)

现在,如果container_widthNah发出警报,我会得到数字,我做错了什么?

zzz*_*Bov 5

你得到的NaN不是数字,因为你收到的宽度值将是一个包含单位的字符串

IE:

"500px"
"3em"
"27.2%"
Run Code Online (Sandbox Code Playgroud)

可以解析数字parseInt

width = ...css('width');
width = parseInt(width);
Run Code Online (Sandbox Code Playgroud)

但这完全没必要,因为jQuery有这个width方法.

width = ...width(); //numeric value
Run Code Online (Sandbox Code Playgroud)


pim*_*vdb 5

.css("width")返回一个表示宽度的字符串,"px"附加,即"___px".将该字符串与某个数字相乘会失败("12px" * 2计算结果NaN).

您可以查看函数.width()以获取宽度,并.width(x)设置宽度(两者都作为数字).