1

设计 WebWorks 应用程序页面结构的正确方法是什么?我也在使用 jQuery-mobile。

A:如果所有页面都在一个 HTML 中,每个页面都是:

<div data-role="page">...</div>

B: 页面是否应该在不同的 HTML 文件中分开并相互链接?

我目前正在使用方法 A,但是从一个页面转换到另一个页面时应用程序很慢。我怀疑原因之一是包含所有页面的单个 HTML 的大小。

我遇到的另一个问题是,按下手机上的物理“后退”按钮会退出应用程序,这是我怀疑我将所有页面都放在一个 HTML 中的方法的另一个原因。

4

2 回答 2

2

一个非常自以为是的答案:您使用了错误的框架。jQuery Mobile 非常臃肿,我发现即使在最近的 iOS 设备上它的性能也很差,更不用说黑莓的性能不是很好的操作系统了。

如果您继续沿用 jQuery Mobile 路线,我仍然建议您将所有页面放在一个 HTML 文件中,尤其是因为在单独的 HTML 页面之间移动时,WebWorks 上的用户体验有点欠佳。例如,当您点击指向不同 HTML 文件的链接时,您会看到非常明显的“白色闪烁”,尤其是在较旧/功能较弱的设备上(尽管您可以通过rim:loadingScreen在配置中为元素设置背景颜色来缓解这种情况.xml)。由您决定这是否比 jQuery Mobile 中的缓慢过渡更好或更差。

至于后退按钮,您可以通过将事件处理程序附加到后退键来覆盖默认行为(不要忘记blackberry.system.event在 config.xml 中启用该功能):

blackberry.system.event.onHardwareKey(blackberry.system.event.KEY_BACK, function() {
  // Back key pressed, go back to previous screen
}

但是,如果您仍然对替代解决方案持开放态度,我强烈建议您尝试一下 bbUI.js ( https://github.com/tneil/bbUI.js ) - 这是一个半官方框架,看起来更多BB 上的主页比 jQuery Mobile 更好,并且针对平台进行了更好的优化(例如,允许您仅加载您当时正在显示的特定页面所需的脚本,解决一些 WebWorks/BB 特定的问题等。 ) - 将它与 Zepto ( http://zeptojs.com/ ) 结合起来,Zepto 是一个非常快速的 jQuery 替代品,你最终会得到一个比基于 jQuery Mobile 的应用程序慢得多的应用程序。

于 2012-04-25T10:54:34.600 回答
1

您可以使用最适合您项目的方式。对于大型应用程序,可能值得拥有一个“index.html”,然后链接到其他几个页面。也可以使编辑代码更容易。

于 2012-04-20T16:06:47.610 回答