使用jquery获取一个div的高度并改变另一个div的边距

时间:2014-03-31 20:28:48

标签: jquery css

我有一个从数据库中读取数据的php while循环。 在那个while循环是一个可变高度的div,另一个div。 我试图获得第一个div的高度并将该数字应用于第二个div的上边距作为减号:margin-top:-first div height。 我正在使用此代码

<script>
var height = $(".artistinfo").height();
$(".artistimage").css("margin-top", - height);
</script>

此代码正在运行,但它正在获取第一个db记录中第一个div的高度,并将其应用于所有记录中第二个div的边距。

任何人都可以帮我解决这个问题吗?

编辑:

这是我的while循环中的html

while($info = mysqli_fetch_array( $data )) { 
$img = $info['image'];
$image = substr($img, 3); 
echo "<div class='artistdiv'>";
echo "<div class='artistinfo'>";
echo "<div class='artistinfotext'>";
echo "<div class='heading2'>";
echo $info['artist'];
echo "</div>";
echo nl2br($info['info']);
echo "</div>";
echo "</div>";
echo "<div class='artistimage'>";
echo "<img class='resizedimage' src='$image' />";
echo "</div>";
echo "</div>";}}

1 个答案:

答案 0 :(得分:1)

您可以使用 css 方法更改CSS,并使用遍历最近的 artistimage 的回调,获取其高度并将其作为值返回到方法设定。

$( ".artistimage" ).css( "margin-top", function() {
  return $(this).prev('.artistinfo').height() * -1
});