jQuery-从元素获取CSS值

时间:2018-11-09 11:38:47

标签: javascript jquery

我正在搜索一个容器以抓取匹配元素的填充物。

padding = $( ".container" ).find( ".set_height" ).css( "padding-top" );

console.log(padding);
.set_height {
    padding-top:50px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">

	<div class="section">
		<div class="match_height">
      Section 1
		</div>
	</div>

	<div class="section">
		<div class="match_height">
      Section 2
		</div>
	</div>

	<div class="section">
		<div class="set_height">
     Section 3
		</div>
	</div>

</div>

set_height div也可能是fixed_heightdynamic_height

我该如何修改jQuery以搜索其中之一并在找到一个时停止它,因此,如果有多个,那么它将只抓住它找到的第一个的值?

1 个答案:

答案 0 :(得分:3)

http://api.jquery.com/multiple-selector/

您可以通过一个类列表作为选择器。

var padding = 0;
var items = $( ".container" ).find( ".set_height, .fixed_height, .dynamic_height");
if (items.length) {
    padding = items[0].style.paddingTop; 
}

编辑

@segu是正确的(谢谢),但是仅调用first()是不够的,您必须检查first().style的结果是否为undefined,因为调用{{1}如果未找到结果,}可以触发first().style.paddingTop。我只是使用Uncaught TypeError: Cannot read property 'paddingTop' of undefined属性。