jQuery计算2个不同的HTML元素属性(高度+边距 - 底部)

时间:2014-05-13 18:48:45

标签: javascript jquery html css

我试图获取元素的高度和边距 - 并计算它们。但到目前为止,我只能做到这一点:

var sum = $('div').height() + 25); 

25我必须在

的样式表中查找自己
div {
   height: 75px;
   margin-bottom: 25px;
}

我如何自动制作?

因为当我尝试:

var sum = $('div').height() + $('div').css('margin-bottom'); 

它不会返回任何值。

3 个答案:

答案 0 :(得分:3)

你可能正在寻找http://api.jquery.com/outerheight/,其中包括边距,填充和边框(所有这些都计入总高度,以及基本高度)。或者,您可以使用parseInt($('div').css('margin-bottom')),因为该值是一个css字符串,如下所示:100pxparseInt()会从该css中提取100,这就是您想要的。

另外,你总体上做错了。您是否正在寻找所有div元素的所有高度的总和?或者您的页面只有一个div?

答案 1 :(得分:0)

文档中通常有许多“div”元素。 你需要一个更好的选择器。 Fiddle for value in console.log

<div id="TestId" class="test"></div>

.test
{
height:40px;
margin:5px;
}

var tester = $("#TestId");
var eleHeight = tester.outerHeight();
var marginBottomHeight = tester.css('margin-bottom').replace("px", "")
console.log(eleHeight + parseInt(marginBottomHeight));    

答案 2 :(得分:0)

$('div').css('margin-bottom')将附加px。尝试使用类似parseInt()

的内容
var sum = $('div').height() + parseInt($('div').css('margin-bottom'), 10); 

w ^