介绍
这个答案的更大版本也可以在这里找到。
jQuery Mobile从未打算仅用作 HTML5/CSS3 混合移动应用程序框架。在与它的哥哥jQuery和jQuery UI类似的轨道上,它旨在用作不断增长的移动 Web 应用程序市场中的强大、响应式解决方案。它从它的哥哥那里得到的是全方位的浏览器支持。在每个可能的主要平台上运行它,它应该可以正常工作。
同样广泛的浏览器支持也带来了另一个问题,那就是平台优化。因为 jQM 不能支持特定的平台也意味着它没有被优化为在其中的任何一个中使用最多。
让我们也谈谈Phonegap。虽然很棒的应用程序打包系统,但当与更大的jQuery Mobile应用程序一起使用时,它会变成一个地狱洞。这就像两个伟大的父母生了一个畸形的私生子,或者把大的优点变成了更大的缺点。
解决方案
与人类历史上的往常一样,另一批开发人员来填补这个明显的漏洞。这里出现了jqMobi(现在的AppFramework)、jqTouch、Zepto、Sencha Touch、Trigger.io等。
好对...
在超越 jQuery Mobile 之前,必须了解一件事,无论您在速度上获得什么(相信我,您会得到它),您将失去社区支持。虽然前面提到的每个框架背后都有一个相当大的开发人员社区,但所有这些框架加起来甚至都无法接近jQM。
话虽如此,让我们深入研究细节。根据我的经验,目前作为 HTML5/CSS3 Android 和 iOS 混合应用程序框架的两个最佳解决方案是AppFramework和Sencha Touch。首先,让我说,它们比jQuery Mobile更快(如果 jQ 开发人员继续学习这门课程的话)。UI 支持在Sencha Touch的情况下是相似的,甚至更好,更不用说 UI 看起来更原生,它是 jQuery Mobile 的情况。Listviews 更快,滚动更好,过渡不会结结巴巴。
... 坏的
之前有人问为什么人们会选择使用jQuery Mobile来代替?显而易见的原因是社区支持,在某种程度上,这是事实。但这里还有一些其他紧迫的问题。虽然jQMoby将自己宣传为jQuery Mobile的更真实的jQuery替代品,但这是一个天大的谎言。虽然仍然是一个很棒的优秀框架,但他们将这句话用作营销技巧。他们确实克隆(重做)了很多jQuery功能,但这只是部分工作,而且是资深的jQuery开发人员会发现他们自己遇到了问题。他们将无法充分利用他们以前的知识,因此花费更多的时间试图找到如何做一些本应有效的事情,而不是在应用程序上工作。
另一方面,Sencha Touch没有遇到这个问题,因为它有一个不同的,几乎是陌生的语法。与jqMoby一样,您将需要大量时间来了解其语法。但不要害怕,最终的结果会是令人满意的。
另一件事,与 jQuery Mobile 和Phonegap不同,AppFramework和Sencha Touch有它们的原生应用程序打包系统。在我看来,这个系统比Phonegap更好,因为它们可以与他们的 js 框架一起工作。Phonegap 唯一拥有的就是一个巨大的插件开发社区。
链接
jQuery vs Zepto vs jQMobi - 哪一个是最快的?
在这种情况下,jQuery 类似于 jQuery Mobile,因为这里的测试依赖于 jQM 从 jQ 获取的底层框架功能。
对 jQuery Mobile 与 Sencha Touch 的好评
标题说明了一切。
AppFramework 论坛
只有好的 jqMoby 支持站点
煎茶触控论坛
只有好的 Sencha Touch 支持网站
结论
AppFramework 可能是您的最佳选择。它具有与 jQuery Mobile 类似的设计,因此语法不会成为问题。