15

jQuery Mobile と Phonegap を使用して、iPhone 用の簡単なアプリケーションを作成しました。それは非常にうまく機能しますが、アプリケーションは別のページに遷移するために以下を使用し、それは地獄のように遅かったです:

<a data-role="button" id="about_link" data-transition="slide" 
     href="#page3" data-icon="gear" data-iconpos="left">
     Settings
</a>

ここで単純aに魔法を実行しているだけで、奇妙な400ミリ秒の遅れなどが発生しました...

多くの読書の後、ボタンを作成しadivクリックイベントを自分で処理して、ボタンを高速化しました。

$("#about_link").live("touchstart", function(){
    slideTo('#page3',false);
});
function slideTo(page,reverse){
    $.mobile.changePage( page, {
        transition: "slide",
        reverse: reverse
    } );
}

違いは大きいですが、それでも私の好みには遅すぎます。jQuery Mobile は、他のページに移動する前に、ボタン アニメーション全体 (ホバーおよびクリック) が終了するのを待機しているようです。

今私の質問:

  1. タッチスタートは最速の方法ですか? 私はfastclickのような他のライブラリを使用しましたが、それも超高速ではありませんでした。
  2. ボタンのアニメーションは悪者ですか?無効にできますか?
  3. ヒントを教えてください。この特定の問題に関して、Googleは私の友人ではありません...

Gr.

4

2 に答える 2

34

実際には jquery mobile の css にあります。

.in, .out {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-duration: 350ms !important;
}

ms を微調整するだけで問題ありません。

于 2012-04-11T15:42:18.473 に答える
4

おそらくカスタム遷移を作成する必要があります。CSS をハッキングするよりも少しクリーンです。

http://jquerymobile.com/test/docs/pages/page-customtransitions.html

于 2012-10-31T11:56:41.987 に答える