It's better than the last round, but still has a bit of a ways to go on the iphone.
For example, the behavior of clicking one of the slide menus is:
1. The address bar pops down momentarily while the ajax call is made and then disappears after half a second.
2. The loading graphic overlay appears and then disappears.
3. The window pops you back to the top of the original page.
4. The page slides over, and you're on the new page.
5. The new page does a quick half second "flash."
It's progress to be sure, but these little kinks are what need to be ironed out before anyone should consider deploying it.
I actually just finished a web-based ipad demo for a client, and my choices were jqTouch, JQueryMobile or Sencha.
While I love the html syntax for JqueryMobile (Sencha is a giant Javascript function, which had a steep learning curve at first) I felt that the widgets and display quality of jQueryMobile just didn't match that of Sencha.
Sencha's transitions felt faster, animations were smoother, and form items felt more like native parts than in jQueryMobile.
I eventually went with sencha because it produced a better experience on a tablet, but I think I would definitely like to give jQueryMobile a try on my next smartphone project.
It was a problem with both previous versions and it still is a problem. It is so glaringly horrible that I have to assume they are severely restricted by some cross platform plan or dependencies given that jqtouch was able to get the transitions to look quite nice with simple clean css.
See this page (on an iOS device) for comparison.
http://jqtouch.com/preview/demos/main/#animations
As much as I want to like jquerymobile, it just pales in comparison to jqtouch on iOS.
We're actually using hardware-accelerated CSS-based transitions based on jqtouch. The difference is that jqtouch doesn't scroll you back to the position you were on if you navigate back - you always scroll back to the top, then transition so if you're on a long page, click a link, then go back you lose you place. We think that remembering you position is a very important usability feature that's expected on the web so this is included in jQuery Mobile. Unfortunately, it introduces a blink or jump which makes things feel much less smooth.
Page transitions, especially on iOS are an incredibly important issues for the team and we're actively working on improving this. In fact, we have 3-4 different branches exploring various approaches:
https://github.com/jquery/jquery-mobile/issues#issue/455
We weren't able to find a solution in time for a3, but this will continue to improve.
The main difference is in browser support: jQuery Mobile is on its way to supporting Windows Mobile, Opera Mobile, and almost any new mobile browser while jQtouch is only for Webkit. Also, jQuery Mobile works pretty well in Google Chrome from my experience if you're inclined to use a mobile app on the desktop for some reason, while jQtouch doesn't have animations on Google Chrome.
EDIT: And it's officially supported, meaning it's here to stay.
Though I prefer jQuery. But sencha also looks promising. They started investing heavily on web based mobile apps from the very beginning. Apart from sencha, Sprout Core also good player in this field and provide a quite complex framework for the mobile based development.
The most important differences I see in the mobile frameworks available now:
1. As mentioned in one of the other comments the device support is much more comprehensive. Symbian and BB 5 devices are being sold in large quantities every day and the project's goal to support them is an important one.
2. Jqm uses augmented semantic markup for layout, whereas sencha (afaik) uses templates from within Javascript.
3. The jquery community produces a lot of interest, a lot of contributions, and is generally very vibrant. I'm spending most of my time trying to keep up with the pull request back log (apologies to all those still waiting) which is an enormous asset to any oss project.
I was wondering what was going on, since the last missive was targeting a final release in January[1]. I'm excited to see this, and especially excited that we're going to see A-grade support for WinPhone 7 soon. Congrats!
I was browsing the support forums and the team seemed to be copping a lot of (not undeserved) flak over their lack of communication to the public. In response to this they have promised to be much more transparent and have also set up a twitter account.
Yep, we're very active on our @jquerymobile twitter account since the team gained access to it a week ago. We'll be posting code updates and soliciting feedback so follow us. Sorry for the lack of communication over the past few weeks, we've been heads down getting a3 out.
What specifically is slow -- touch events, scrolling, transitions, etc? We're working on bug improvements on all of these items so things will get faster, lighter and more responsive as we go. Oh, and work on more platforms (Nokia, Blackberry 5, Windows Phone 7). Feel free to log issues on the Git tracker.
Mostly the animated transitions. I get about 4 frames total for the entire transition. Scrolling is also a little slow for the first few seconds after loading a page, but it quickly reaches normal speed.
I'm not working on any mobile webapp projects right now, but if/when I do I'll be sure to provide more detailed feedback on the issue tracker (if I encounter issues at that time), and otherwise contribute back to the community.
At any rate, keep up the great work! I finally took a detailed look at jQuery UI as a result of seeing this post and there's a very good chance I'll be using it in the semi-near future.
We're working on debugging WP7 now and will be pushing an update soon to make things work much better. We use media query support to decide who should be enhanced and WP7 doesn't support these so we need to add some code to let them in. We just got our first device last week but things are already looking good.
Great to hear that! Reportedly, there is a WP7 update due soon.. I didn't expect this IE in current WP7 to work at all as good as it does (I think it's 7), we'll get IE9 I guess, with new update. Keep up the good work!
Nice, I love jQuery because it made DOM manipulation a breeze by abstracting everything. But I am getting the feel that jQuery Mobile assumes "what" it is that developers are creating, making it less abstracted and more narrow minded (for instance, that we all want right to left iPod style page navigation). Or perhaps not, I could just be wrong.
jQuery Mobile is not a mobile version of jQuery - it's a UI library for mobile devices. A better comparison would be jQuery Mobile to jQuery UI. Both projects depend on jQuery proper, and both provide UI-widgets (they are absolutely "narrower" than jQuery, as you say).
Great work, however it's far short of the quality of Sencha Touch.
I have to wonder what the point of mimicking native UI is.
I've just started learning Obj-C and iPhone dev and getting ones head around basic UI functionality is at most 2-3 days worth of playing around. Is is really worth sacrificing native performance and consistency for such marginal gain?
Shocking as it may sound not all mobile devices are iOS, in fact most aren't. jQuery mobile lets you target a huge number of devices. See the supported browsers page for a list:
True, performance on older mobile hardware's not great, my old htc hero runs the demos at a pretty glacial pace. But it wasn't so long ago that javascript performance was apparently so poor that web apps would never catch on and remember this is an alpha version so it's going to get quicker.
I do agree native apps are going to be more appropriate in a number of situations though.
The main focus of jQuery Mobile is NOT to be a competitor to native apps written in Objective C or even Sencha Touch. We aim to build touch-friendly UIs based on HTML5 for web apps and websites that are easy to build and work across a huge variety of platforms.
Sure, you can wrap a JQM site into an app with something like PhoneGap but I agree that a native app will always be more "native" and perfomant.
People never compare web apps built with jQuery UI to native applications created for desktop platforms, so it's a bit puzzling when we see developers try make comparisons between apps built with jQuery Mobile and Objective C. They are completely different tools, each with pros and cons.
The emphasis of the project is on embracing the web for mobile and I think that is the best way to judge the success of this framework.
Thanks for the clarification Todd - this makes perfect sense.
I think what confuses the issue for many people, myself included, is that other frameworks(Sencha) are trying to recreate a pixel perfect iOS/Andriod UI/experience in HTML.
I just tested it on my iphone and it's really looking excellent.
Direct link (to demo) for those that want to test it out on a mobile: http://jquerymobile.com/demos/1.0a3/