【问题标题】:Slow JQuery Mobile panels in PhonegapPhonegap 中的慢速 JQuery Mobile 面板
【发布时间】:2013-03-18 09:36:30
【问题描述】:

我在 JQM 中为 Phonegap 应用程序实现了一个滑动面板,但由于某种原因,当我尝试在 Android 4.x 上打开它时,它需要 1500 毫秒才能出现,但在 Android 2.x、iOS 和 Blackberry 中它显示瞬间。

$(document).on("touchstart","img#openLeft", function()
{
     $('#mydiv').panel("toggle");
}

你能告诉我我可以遵循什么策略来使面板显示得更快,而不删除滑动动画?

谢谢!

PS 我使用的是 JQuery Mobile 1.3.0

【问题讨论】:

    标签: cordova jquery-mobile panel


    【解决方案1】:

    我最终修改了 JQM-1.3.0.css 来解决这个问题,结果发现它们没有硬件加速。

    上:

    • @-webkit-keyframes 从右滑入
    • @-moz-keyframes 从右滑入
    • @keyframes slideinfromright
    • @-webkit-keyframes slideinfromleft
    • @-moz-keyframes 从左滑入
    • @keyframes slideinfromleft
    • @-webkit-keyframes slideouttoleft
    • @-moz-keyframes 向左滑动
    • @keyframes slideouttoleft
    • @-webkit-keyframes slideouttoright
    • @-moz-keyframes slideouttoright
    • @keyframes slideouttoright
    • .slide.out
    • .slide.in
    • .slide.out.reverse
    • .slide.in.reverse

    我将所有-webkit-transform: translateX(x); 更改为-webkit-transform: translate3d(x,0,0);

    我还将动画更改为 data-display="push",这似乎比 data-display="reveal" 工作得更快,因为它在翻译时启动动画,而不是等待内容翻译后显示。

    【讨论】:

    • +1 用于推送数据显示。这对我产生了巨大的影响,而不会丢失动画。
    【解决方案2】:

    如文档所述,这些由硬件加速。可能是您的 4.0 设备性能不佳。

    您可以通过将data-animate="false" 添加到窗格的 div 来禁用动画。 documentation中提到过。

    【讨论】:

    • 似乎文档有误,它不是硬件加速的。我在同一线程上发布了解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-15
    • 2017-03-13
    • 2013-04-30
    相关资源
    最近更新 更多