计算prev()的jquery高度并将其加或减为当前值

时间:2012-07-31 17:54:59

标签: jquery dynamic height slide

我有一个名为myDiv的css类,当点击缩略图时它向下滑动:

#myDiv
{
  height:800px;
  margin:0 auto;
  width:100%:
}

当用户点击缩略图时,myDiv将显示为800px高。因为有多个缩略图图像具有myDiv的不同高度,例如点击缩略图1将使myDiv 700px高,缩略图2 200px高,有没有办法使用jQuery动态计算高度?

由于我不熟练使用这种语言,所以我只能描述这种情况,所以这里就是......

jQuery的: 1.单击1:单击缩略图1时,获取myDiv class = 700px的高度并向下滑动 2.单击2:单击缩略图2时,获取上一个类(700px)和当前类(200px)的高度,并相互减去以确定上滑或下滑值(700px - 200px = 500px)。

有没有办法计算myDiv的上一个和当前高度,以便它向上或向下滑动到相应的高度?

非常感谢您的帮助。

编辑:CSS和jQuery

#box
{
max-width:1140px;
margin: 0 auto;
display: inline-block;

}

html[xmlns] #portfoliocontainer {
display: block;
}

* html #portfoliocontainer {
height: 1%;
}

#portfoliocontainer:after {
clear: both;
content: ".";
display: block;
height: 0;
line-height: 0;
visibility: hidden;
}

jQuery是:

$('#box').hide();
$('#myDiv').hide();
$('.portfolio-area').click(function(){
$('#myDiv').hide();

$('#box').slideDown('slow');
$('#myDiv').fadeTo('slow',1);

});

1 个答案:

答案 0 :(得分:1)

我认为你需要的是一个clearfix。你可以清除#portfolio div conainer并删除定义的高度,然后一切都很好

http://www.webtoolkit.info/css-clearfix.html

投资组合div中的li是浮动的,因此div没有得到任何clearfix将修复的高度,那么高度将是动态的而不定义它。

对于简单的测试,添加此项并删除添加高度部分

#portfoliocontainer:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    line-height: 0;
    visibility: hidden;
}

您应该创建clearfix类并将其添加到该ID