我只是想不通,为什么这个幻灯片不起作用。它只运行一次:
HTML:
<div class="text">bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
<br />
bla bla bla bla
</div>
<div class="button">Show</div>
CSS:
.text{
height:0;
overflow:hidden;
}
.heightAuto{
height:auto;
}
功能:
$(function(){
$(".button").toggle(function()
{
var $text = $(".text");
var contentHeight = $text.addClass('heightAuto').height();
$text.removeClass('heightAuto').animate({ height: contentHeight}, 500);
}, function() {
$(".text").animate({ height: "0"}, 500);
});
}) ;
这是小提琴:
答案 0 :(得分:3)
因为在第一个动画之后,contentHeight变量再次为0。
如果你不覆盖它,它将起作用:
$(function() {
var $text = $(".text");
var contentHeight = $text.addClass('heightAuto').height();
$text.removeClass('heightAuto');
$(".button").toggle(function() {
$text.removeClass('heightAuto').animate({
height: contentHeight
}, 500);
}, function() {
$(".text").animate({
height: "0"
}, 500);
});
});
答案 1 :(得分:1)