1

jQueryアニメーションを機能させるのに問題があります。divを開始するには.hide()で非表示にしてから、ボタンをクリックしてdivの高さを拡張します。トグルアニメーションは完璧に機能しますが、トグルはしたくありません。

Toggleはこれを行います:divが非表示になり、以下のコードを起動して完全に機能し、次にdivが非表示になり、もう一度起動します-divが完全な高さでポップアップし、0pxまでアニメーション化します。毎回隠しから拡大していきたいです。

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

私は試した

{ 'height':  '552px' }, 'slow'
{ 'height':  'auto' }, 'slow'

var h = document.getElementById('logincontainer').scrollHeight;
{ 'height':  h + 'px' }, 'slow'

高さを552pxに拡張したいのですが、これはdivが毎回すでに持っているものです。

4

2 に答える 2

2

あなたは試すことができますslideToggle()

一致した要素をスライドモーションで表示または非表示にします。

$('#trigger').click(function(e){
    e.preventDefault()
    $('#logincontainer').slideToggle('slow');
})

デモ

于 2012-07-13T22:04:41.523 に答える
1
         $('#logincontainer').animate(
             { 'height':  'show' }, 'slow'
          );

「show」は、毎回拡張するために探していた魔法のjQueryワードでした。非表示の場合も、手動で高さを0に戻す必要があります。

于 2012-07-13T22:04:03.473 に答える