代码之家  ›  专栏  ›  技术社区  ›  Philipp Lenssen

iPad/Phonegap DHTML游戏JavaScript速度优化?

  •  1
  • Philipp Lenssen  · 技术社区  · 14 年前

    我正在使用Phonegap为iPad创建一个游戏,这意味着我在iPad的Safari中使用JavaScript/CSS/HTML。基本上,我在移动大量分辨率为1024x768的img元素(有时会更改它们的src),只是没有任何网络连接的本地文件。在桌面上,Safari的工作很顺利,但在iPad上,我的setInterval感觉延迟和闪烁。你有什么我可以尝试的速度优化技巧吗?谢谢!

    PS:我知道切换到iOS的原生Objective-C可能会快得多,但我真的很想用标准的JS/HTML/CSS来尝试。

    2 回复  |  直到 14 年前
        1
  •  5
  •   gblazex    14 年前

    您遇到了一个最常见的浏览器脚本问题,即动画网页。

    应用程序速度减慢的原因是浏览器是一个 单螺纹

    setInterval 让你相信你的行为会像在一个 多线程 将动作推到 将继续推动新的动作,但旧的动作仍将存在,整个渲染将变成一个缓慢的混乱。

    你可以做的事情,以避免滞后。

    1. 以平稳换速度 :提高间隔之间的延迟,以避免UI堆栈中的累积操作。

    2. 设置超时 设置间隔 ,只是它不能确保重复之间的间隔,而是关注浏览器在重复操作之前应该等待多长时间。所以为了让它更像 设置间隔 您可能需要跟踪操作之间经过的时间,并计算必须处理的更改的度量。

    3. 组动画

    另外,请务必阅读以下文章:

    Making an iPad HTML5 App & making it really fast ( )

        2
  •  1
  •   ad rees    14 年前