jQueryのslideToggleエフェクトが必要ですが、iOSデバイスでGPUを呼び出すためにCSS3のトランジションを使用して、トランジションがスムーズになるようにします。CSS 3トランジションを使用してjQueryのslideToggleと同じ効果を得る方法は?
答えて
これは、height
,padding
、border-width
に移行することで実現できます。次に例を示します。
$('.run-css').click(function() {
$('.cont').toggleClass('toggled');
});
.cont {
width: 100px;
height: 100px;
border: 1px #CCC solid;
background-color: #EEE;
padding: 5px;
-webkit-transition: height .3s linear, padding-top .3s linear, padding-bottom .3s linear, border-top-width .3s linear, border-top-width .3s linear;
transition: height .3s linear, padding-top .3s linear, padding-bottom .3s linear, border-top-width .3s linear, border-top-width .3s linear;
}
.toggled {
overflow: hidden;
padding-top: 0;
padding-bottom: 0;
height: 0;
border-width: 0 1px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<button class="run-css">CSS slideToggle</button>
<div class="cont">Toggle this div</div>
私はAnimatableがすべきことを信じています。これはCSSトランジションのフレームワークですが、iOS開発はしませんが、Lea VerouはFFやChrome for iOSでテストしています。
CSSトランジションとJavaScriptを使用するのような、他のCSSアニメーションライブラリがあります。
応答に感謝します。 – sevens
申し訳ありませんが、あなたは正確な高さを知っている限り、これはCSS3でサポートされていません。 0とautoの間でアニメーション化する方法はありません。正確な高さを知っていれば、ここでいくつかのトランジションコードを生成することができます:http://css3generator.com/
それは私が 'height'を言及せずに解決策を探し続けることです。 – Muhammed
True、実際には最大高さを切り替えることができます。
最大高さ:0と最大高さ:1000pxの間で(JS経由で)切り替え、結果が得られますが、jQueryのslideToggle関数ほど滑らかではありません。
不透明度が弱くなっていて、かなり良く見えます。大きなものではぎこちないアニメーションを作成できるので、比較的短いコンテナでこのテクニックを使用することを強くお勧めします。
面白いです。私はこれと一緒に遊んだし、それはぎくしゃくするコンテナのサイズではありません...それは '最大高さ'と実際のコンテンツの高さの違いです。そのため、コンテンツの高さを知る必要があるかもしれません。もしあなたがぎこちない経験をしないようにしたいのであれば(コンテンツの高さを知っていれば、単に「高さ」を越えることができます)。 – bryanbraun
.container {
overflow-y: hidden;
max-height: 0;
transition: max-height 0.5s ease;
}
.container.open {
max-height: 1000px; /* approx */
}
- 1. JqueryのslideIn(MooTools)と同じ効果を実現する方法は?
- 2. jQuery slideToggle +バウンス効果は同時にですか?
- 3. Pythonのraw_input()と同じ効果を得る方法はありますか?
- 4. location.hashを使用してjqueryを有効にするtoggle/slideToggle
- 5. jqueryトランジション効果をホバーしてクリックする
- 6. 同じ方法で複数の待機を使用した場合の効果?
- 7. 同じページに同じjQueryスクリプトを使用する方法
- 8. moviePlayBackDidFinishとトランジションの効果
- 9. Rails 3を使用して同じビューの同じクラスの複数のオブジェクトを作成する方法は?
- 10. CSSメディアクエリのチェックと同じ幅を得る方法
- 11. jQueryとlocalScrollを使用してスライドアウトしてフェードする効果
- 12. jQueryのslideToggle()を同時に
- 13. cssのみ、またはcss + jqueryでホバー効果を作成する方法
- 14. JQueryを使用してCSSプロパティの値を取得する方法は?
- 15. Three20 openURLAction - トランジション効果を元に戻す方法は?
- 16. CSSを使用したホバー効果
- 17. CSS同じ高さを得る方法は?
- 18. jquery slidetoggleに不透明度フェード効果を追加する方法は?私が上にスライドするには、次のコードを使用してdivのダウンだ
- 19. OpenCVを使用してCam Scannerのようなマジックカラー効果を得る方法
- 20. WebKitはOpenGLを使用してCSSトランジションをレンダリングしますか?
- 21. jquery/jsを使用して別のサイト(同じドメイン)から表のセル値を取得する方法は?
- 22. Luceneの類似点を使用して同じ結果を得る
- 23. JQueryを使用して、同じPHPパラメータを持つ同じPHPファイルのAJAX XML結果が異なる
- 24. jQuery - SlideToggle、閉じるスクロールボタン?
- 25. 同じ画像にフェードとケーンズ効果
- 26. グラデーショングラデーションを使用したCSSトランジション
- 27. インラインブロックを使用したCSSトランジション
- 28. jQueryを使用して同じZ-インデックスを持つ要素を取得する方法は?
- 29. jqueryを使用してwordpressの検索結果を取得する方法
- 30. jqueryを使って同じCSSプロパティを複数回オーバーライドせずに適用する方法は?
私はiOS開発者をテストしていませんが、move.jsまたはanimatableはどうでしょうか?トグルではなく、要素がどの位置にあるかについてのif/elseステートメントがあります。 –