jQueryMobile PageTransition速度

时间:2013-04-17 02:52:04

标签: performance cordova jquery-mobile

我正在使用带有PhoneGap / Cordova 2.4.0的jQueryMobile 1.3.0并试图弄清楚如何加快页面转换。在笔记本电脑上运行时,我将页面转换减少到大约50毫秒,但是,当部署到iPhone 4时,页面转换速度显着降低。

从第A页到第B页的场景转换。 我注意到“Page B - pagebeforecreate”事件和“Page A - pageHide”事件之间的appox为500ms。

以下是我的尝试:

  1. 我删除了大部分代码。
  2. 已验证页面A - pageRemove事件未触发,因此没有时间。
  3. 将css中的动画持续时间从350ms减少到30ms。 (这有帮助,但还不够)

    .slide.out,.slide.in {
        -webkit-animation-timing-function:ease-out;
        -webkit-animation-duration:30ms;
    }
    
  4. 使用changePage

    尝试'a'标记和div
    <a href="#pageB">Go</a>
    
    <div onclick="$.mobile.changePage('#pageB');">Go2</div>
    
  5. 任何人都对jQueryMobile在这两个需要时间的事件之间正在做什么有任何想法。我的下一步将是从jquerymobile代码内部开始记录,以缩小花费时间的时间。

    我感谢任何帮助!

    谢谢, 汤姆

2 个答案:

答案 0 :(得分:2)

jQuery Mobile默认添加300毫秒的延迟来点击事件 - 它正在监听双击和滑动等内容。如果您没有使用任何此类事件,请考虑在我的PhoneGap / jQueryMobile应用程序中加入FastClick http://forum.jquery.com/topic/how-to-remove-the-300ms-delay-when-clicking-on-a-link-in-jquery-mobile,这已解决了我的速度问题。

答案 1 :(得分:0)

您可以禁用转换的最快方式

   <script type="text/javascript">
    $(document).on("mobileinit", function() {
                $.mobile.defaultPageTransition = $.mobile.defaultDialogTransition = "none";
            });
   </script>