jquery height animate()不起作用

时间:2013-03-07 14:28:37

标签: jquery html css jquery-animate

我刚创建了这个:jsfiddle.net/MWzDe/

JS:

$('button').click(function () {
  if ($('ul').height = 0) {
    $('ul').animate({'height':'100%'},'slow');
  } else {
    $('ul').animate({'height': 0},'slow');
  }});

我需要向上/向下滑动“ul”标签,而不会“真正”消失。代码有什么问题?还没有成功。感谢。

7 个答案:

答案 0 :(得分:6)

.height是一个功能:使用$('ul').height()来获得像这样的高度

if ($('ul').height() == 0) {
}

答案 1 :(得分:4)

您只需使用slideToggle即可实现此目的。

试试这个:

$('button').click(function () {
    $("ul").slideToggle("slow");
});

小提琴:http://jsfiddle.net/MWzDe/3/

答案 2 :(得分:4)

尝试:

$('button').click(function () {

    $('ul').animate({
        'height':'toggle'
    }, 'slow');

});

小提琴here

答案 3 :(得分:2)

当你使用jquery时,为什么不使用.slideToggle()

$('button').click(function() {
    $('ul').slideToggle('slow');
});

答案 4 :(得分:2)

使用slideToggle()

DEMO VIEW

$('button').click(function () {
    $('ul').slideToggle('slow');
});

答案 5 :(得分:2)

只需使用 .slideToggle 功能即可。 DEMO HERE

$('button').click(function () {
    $('ul').slideToggle();
});

答案 6 :(得分:0)

以下代码使用animate

$('button').on(click, function() {
    $('ul').animate({height: 'toggle'},'slow');
})