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 毫秒延迟等......

现在经过大量阅读,我制作了a按钮 adiv并自己处理了点击事件以使按钮更快。

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

差异很大,但对于我的口味来说仍然太慢了。看起来 jQuery Mobile 会等待整个按钮动画(悬停和单击)完成,然后再转到其他页面。

现在我的问题:

  1. touchstart是最快的方法吗?我使用了其他库,例如fastclick,但这也不是超级快。
  2. 按钮动画在这里是坏人吗?那我可以禁用它吗?
  3. 你们能给我一些建议吗?谷歌在这个特殊问题上不是我的朋友......

格。

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 回答