【发布时间】:2012-07-29 13:49:33
【问题描述】:
我有一个名为 myDiv 的 css 类,当单击缩略图时它会向下滑动:
#myDiv
{
height:800px;
margin:0 auto;
width:100%:
}
当用户点击缩略图时,myDiv 将显示为 800 像素高。因为myDiv 有多个高度不同的缩略图,例如点击缩略图 1 将使myDiv 700px 高和缩略图 2 200px 高,有没有办法使用 jQuery 动态计算高度?
由于我不精通这种语言,我只能描述场景,所以这里......
jQuery:
1.点击1:点击缩略图1时,得到myDivclass=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);
});
【问题讨论】:
-
你只是想让 myDiv 以动态高度向下滑动吗?
-
嗨 Huangism,是的,没错。 myDiv 中显示的内容具有不同的高度。我知道 jQuery 在向上或向下滑动动画时使用 min-height 存在错误。我只希望 myDiv 适合正在显示的内容的高度。
-
我认为最简单的方法是获取 myDiv 的先前高度和当前值并减去它以获得以像素为单位的向上或向下滑动值,以实现平滑动画。
-
您如何更改内容?你能举一个关于小提琴的简单例子吗?我在想,如果您的内容发生变化,那么您不需要为其设置动画高度,它应该是自动高度,因此它会向下滑动到内容填充它的位置
-
我已经在我的网站上上传了我的最新示例:circularchaos.com/jq。使用 AJAX 动态更改内容。我需要设置一个高度,因为 myDiv 下方还有其他内容。因此,当 myDiv 打开下面的内容时,会被下推。目前 myDiv 的高度设置为 850px。当您单击缩略图时,您可以看到 myDiv 具有固定的高度,因此即使内容很小,下面仍然会有空白。我尝试将高度设置为自动,但幻灯片动画中断并且 myDiv 与下面的内容重叠 - 谢谢
标签: jquery dynamic height slide