0

accordionOptionsページ上のアコーディオン オブジェクトの動作を仲介するオブジェクトがあります。次のようになります。

 var accordionOptions = {
                icons: {
                    header: 'ui-icon-circle-arrows-e',
                    activeHeader: 'ui-icon-notice'
                },
                animate: {
                    easing: 'easeOutBounce',
                    duration: 1000
                }
            }

そのオブジェクトを使用して、アコーディオンの動作を次のように決定しています。

 $('#accordion1').accordion({
                icons: accordionOptions.icons,
                animate: accordionOptions.animate
            });

ページにアンカータグがあり、クリックすると、新しいパネルがクリックされたときにアコーディオンと同じアニメーションが表示されるようになります。

$('#btnChange').click(function () {
                $('#test').animate({

                    easing: accordionOptions.animate.easing
                });
            });

ここのフィドルで、これが機能しないことがわかります。私はいくつかのことを試しましたが、すべて失敗しました。引数testを使用して目的の動作を divにアタッチするにはどうすればよいですか?accordionOptions

4

1 に答える 1

1

for のイージングの使用.animateは、for の場合とは少し異なり.accordionます。アニメーション化する対象とは別に、継続時間とイージングを渡す必要があります。高さまたはアニメーション化するプロパティを設定する必要があります。

$('#test').animate({ height: 100 }, accordionOptions.animate.duration, accordionOptions.animate.easing);

または、最初に行っていた方法と同様の短い構文:

$('#test').animate({ height: 100 }, accordionOptions.animate);

更新されたフィドル: http://jsfiddle.net/C6Eax/1/

于 2013-10-11T20:02:35.400 に答える