如何在jQuery中反转高度动画方向
How to reverse height animate direction in jQuery?
我有两个div像下面;
<div id="diva">diva</div>
<div id="divb">divb</div>
风格;
div{
display: block;
overflow: hidden;
}
#diva{
background-color: gray;
width: 200px;
height: 200px;
}
#divb{
background-color: blue;
width: 200px;
height: 0px;
margin-top: -40px;
}
Div 2默认高度为0,但当鼠标进入第一个Div时扩展。
$("#diva").mouseenter(function(){
$("#divb").animate({ height: "40px" });
}).mouseleave(function(){
$("#divb").animate({ height: "0px" });
});
一切正常。但是我想反转第二个div的高度动画方向。现在,在目前的情况下,当鼠标进入第一个div时,第二个div从上到下滚动,当鼠标离开时,第二个div从下到上滚动。但我想扭转这一局面。我希望div在鼠标进入时从下向上展开,并在鼠标离开时从上向下收缩。
我该怎么做?这里是工作小提琴
通过将divb
嵌套在diva
中,使diva
位置为relative
,使divb
位置为absolute
,并将其放在底部,我已经达到了您想要的效果。小提琴:http://jsfiddle.net/Jcrbm/
CSS:
div{
display: block;
overflow: hidden;
}
#diva{
background-color: gray;
width: 200px;
height: 200px;
}
#diva{
background-color: gray;
width: 200px;
height: 200px;
position:relative;
}
#divb{
background-color: blue;
width: 200px;
height: 0px;
position:absolute;
bottom:0px;
}
HTML: <div id="diva">diva
<div id="divb">divb</div>
</div>
如果您不想修改HTML,您可以通过将margin-top
与height
同时动画化来实现:
$("#diva").mouseenter(function () {
$("#divb").animate({
height: "40px",
marginTop: -40
});
}).mouseleave(function () {
$("#divb").animate({
height: "0px",
marginTop: 0
});
});
http://jsfiddle.net/a9vpS/3/相关文章:
- 如何将高度动画设置为自动
- 如何设置'auto'JQuery动画中的高度
- 为矩形制作动画'它的高度应该上升,而不是下降
- 格林索克动画不适用于 SVG 高度
- 纯JavaScript - 定时动画 - 一致的高度
- 制作jQuery高度百分比动画
- jQuery在.show期间设置高度动画('幻灯片')
- jQuery动画到容器的高度
- 替换后将动画设置为高度0
- 动画渐变(javascript)背景不会延伸到窗口的整个高度
- 核心动画页面中的聚合物内容标签不会;t测量高度
- 页脚在滚动底部时没有设置高度动画
- CSS 切换过渡动画,自动高度不起作用
- 制作潜水高度动画
- Javascript在Angular中切换高度动画
- 设置高度动画时元素跳跃
- Div高度动画会导致Div在jQuery中更改对齐方式
- 在高度动画后获取回调
- Javascript高度动画问题
- 如何在jQuery中反转高度动画方向