2011-02-19 80 views
44

我正在开发一个Web应用程序。 MySql/PHP后端和HTML/jQuery前端。jQuery Mobile的移动和桌面?

我想使用jQuery UI框架。

现在看到jQuery Mobile已经不存在了,我想尽可能让移动设备可以访问应用程序。

我谷歌搜索,但没有找到一个高质量的答案。

如果我使用jQuery Mobile,我可以使所有工作形成相同的代码吗?

我希望它显示移动小部件,如果从移动浏览器访问。
但是使用jQuery UI小部件可以从桌面浏览器访问。

这可能只是通过使用jQuery Mobile及其标记,或者我必须分别为移动(jQuery Mobile)和桌面(jQuery UI)编写前端?

也就是说,jQuery Mobile如果从桌面浏览器访问,会自动“回退”到jQuery UI。

回答

26

我认为这在很大程度上取决于你想要做什么和你试图捕获的功能。如果您希望网页在移动设备和相同桌面上以某种方式行事,那么通过一些仔细的编码/测试,jquery.mobile就可以继续使用。

如果您查看jquery.mobile(未压缩版本)的CSS,您可以直接编辑代码以按照特定屏幕尺寸的方式显示HTML元素。只需选择适用于桌面/大屏幕尺寸的尺寸即可适当缩放。

根据你想要完成的移动版本,我还会检查出jQTouch - 它允许特定于移动设备的功能,例如“点击”(代替“点击”),作为一个例子 - 但也有一个desktopCompatability选项,所以它恢复为桌面浏览器。

一注意,与这些库中的任何一个,你仍然需要根jQuery库。

希望这会有所帮助。

+0

感谢您的重播。我可能会分开前端,因为我可能没有足够的空间在移动设备上显示所有内容,例如在桌面上。但我只是想知道我应该使用jQuery UI还是直接使用手机。 – ZolaKt 2011-02-19 04:07:05

25

首先,您必须考虑移动和桌面的工作流程差别很大。试图在桌面版本和移动版本之间切换不会仅仅是资源之间的切换。其次,这两个UI框架在使用方式上有很大的不同。 jQuery UI是一个小部件的集合,你可以在你喜欢的地方和你喜欢的地方调用它,它在一个支持它的CSS框架的感​​觉库(ISH)中。然而,jQuery mobile的工作方式却大不相同,默认情况下,它是一种标记驱动的框架,并且启动并运行它并不需要您编写1行Javascript。

我给你的建议是将数据层视为公共代码,将客户端视为完全独立的工作。就我个人而言,我设法使用常见的REST Web服务来创建应用程序。我使用jQuery UI来使用webservices并为客户端创建混搭。然后,我为移动版本使用webservices服务器端来生成jQuery-mobile html页面以供在移动设备上使用。

另请注意,使用jQuery Mobile在客户端生成动态HTML将极大地令您头疼。在项目成熟之前,我只会使用它来增强框架的高度语义标记。创建一个良好的固体数据层,其余的将很容易:)

6

这里是完整的源代码:https://github.com/ti-dev/Scrum-it为开源的Scrum板,它是专为桌面设备和Apple iPad设计的。所以有可能将这两个世界合并到一个网页中。