2011-10-27 15 views
7

HTML/JS(jQuery)/ CSSを使用して作成したモバイルアプリを持っていますが、jQuery Mobileで見られるようなページ遷移を含めることを検討していますjQuery Mobile Framework全体を含める必要はありません。jQuery Mobile CSS3ページ遷移(jQueryモバイルライブラリなし)

これらのアニメーションは、CSS3トランジションがjQueryトリガに関連付けられているように見えますが、どこから開始するのかはわかりません。誰にもアイデアはありますか?

ご協力いただければ幸いです!

+3

私はjQMがBeta RC2のデカップリングウィジェットであることを知っているので、ページ遷移ライブラリだけを調べることができます:http://jquerymobile.com/blog/2011/08/03/jquery-mobile-beta-2-released/これを見てください:https://github.com/jquery/jquery-mobile/tree/master/js –

+0

@PhillPaffordありがとうございます。それは最高です。 – dSquared

答えて

8

jQuery MobileのCSSファイルの非圧縮バージョンをダウンロードし、必要な特定のトランジションのクラスをコピーします。

CSSは、ここで見つけることができます:http://code.jquery.com/mobile/1.0rc2/jquery.mobile-1.0rc2.css

そして、あなたがコピー・アウトした場合の移行のためのCSSクラスのすべての遷移のためのコードは、行1270から始まり、それは約6キロバイトの情報のです。ここで

は、上記のCSSファイルからいくつかのサンプルコードです:

.viewport-flip { 
    -webkit-perspective: 1000; 
    position: absolute; 
} 

.ui-mobile-viewport-transitioning, 
.ui-mobile-viewport-transitioning .ui-page { 
    width: 100%; 
    height: 100%; 
    overflow: hidden; 
} 

.flip { 
    -webkit-animation-duration: .65s; 
    -webkit-backface-visibility:hidden; 
    -webkit-transform:translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */ 
} 

.flip.out { 
    -webkit-transform: rotateY(-180deg) scale(.8); 
    -webkit-animation-name: flipouttoleft; 
} 

.flip.in { 
    -webkit-transform: rotateY(0) scale(1); 
    -webkit-animation-name: flipinfromleft; 
} 

だから、フリップにするためにあなたが.flipクラスと.inクラスを追加して、フリップアウトするためにあなたが追加になる要素を要素.flipクラスと.outクラスです。

はまた、jQueryのCSSだけで-webkit-接頭辞が含まれていますが、より多くのブラウザをサポートしたい場合は、次のように他の接頭辞を追加することができますなど、-moz--o-

+0

パーフェクト;私はこれを次に試みることを考えていた、そしてそれは行く道のように見える。ありがとうございました! – dSquared

+1

あなたの質問にフィールのコメントをチェックアウトしてください。そのGITリポジトリのファイルを調べるなら、これを見てください:https://github.com/jquery/jquery-mobile/blob/master/js/jquery.mobile .transition.js。これは2KB未満で、アニメートしている要素に必要なCSSを追加/削除します。 – Jasper

+0

さらに優れています。ありがとうございました。 – dSquared

関連する問題