我有这个功能,它可以根据需要运行(我认为它非常自我解释)。但是,输出值是473.4615384340286。我不想要所有.decimal点。我想实际上围捕。 .height()
的{{1}}为475px。
小数点是什么?
#campaign-header
答案 0 :(得分:4)
要将其四舍五入,您可以使用Math.ceil()
:
var inputBillboard = Math.ceil($('#campaign-header').height());
答案 1 :(得分:3)
如果你的div是475px高,那么.height()
只有在 div没有边框或填充时才会返回475 。如果它有边框或填充,它将返回高度减去这些尺寸。如果您想要总高度,请使用.outerHeight()
:
$('#campaign-header').outerHeight(false);
参数(在这种情况下为假)表示是否在计算中包含边距。
答案 2 :(得分:2)
Math.ceil()
就是您所需要的:
var inputBillboard = Math.ceil($('#campaign-header').height());
$('.billboard-height').val(inputBillboard);
答案 3 :(得分:1)
您可能希望使用.outerHeight()
代替.height()
。
outerHeight
将返回高度,并考虑元素的填充等:
// add billboard height value to modal input
var inputBillboard = $('#campaign-header').outerHeight();
$('.billboard-height').val(inputBillboard);
通常情况下,这是人们期望.height()
返回的内容。你得到的和你期望得到的不同让我想知道这是否也适用于你。
您也可以向outerHeight()
提供true,以便将元素边距考虑在内。
该函数始终返回一个整数。
参考:http://api.jquery.com/outerHeight/
如果您不希望大小包括填充,请按照BenM的建议在.height上使用Math.ceil。
编辑:JeffB打败了我。 :)