slideToggle()
テキストを含むDIVで単純なjQueryを実行しようとしていますが、slideDown
アニメーションがスライドするDIVの下部に近づくにつれて、アニメーションが非常に遅くなる(ためらうようです)ことがわかりました。
このコードと例はここにあります。私はいくつかのコンピューターと人気のあるブラウザーのすべての最新バージョンでテストしましたが、すべて同じように動作します。不思議なことに、 jsFiddleでまったく同じページを実行すると、スムーズになります。
何か案は?
アップデート
これの一部は、他の誰かが示唆したように、アニメーションが実行される前にjQueryがスライドするDIVの高さを知らないようです。スライド式DIVのコンテンツは動的で、非常に短いかやや長いので、私もそうではありません。そこで、jQueryで非表示にする前にDIVの高さを取得し、それに応じてCSSの高さを設定してみました。ややスムーズなアニメーションのために作られましたが、おそらく最良の解決策ではありません-デモ
更新2
問題は、最初の例でのいくつかのCSSの問題が原因であるように見えます。まず、DIVが多すぎます。次に、スライディングDIVにはパディングセットがありました-とはうまく機能しません。最後に、スライディングDIVは(ボタン)DIVtoggleSlide
も含むコンテナDIVにありました。#control-container
DIVを2つに減らし(スライディング要素の外側のDIVとスライディングDIV自体)、外側のスライディングDIVパディングを設定しないことでうまくいくようです-最後の例。