A few weeks ago, jQuery Mobile hit 1.0. jQuery Mobile is a framework for building mobile web sites and applications regardless of device or platform. It uses the popular jQuery library so developers can jump right in and hit the ground running. There are a lot of things I like about jQuery Mobile, so I thought I'd take some time to write about.
The first thing, which I already mentioned, is how jQuery Mobile is built on jQuery. The idea here is to take something people are already using, and build something new on top of it. You don't have to learn a new language. You don't have to install any additional software. You don't even really have to skim the documentation to get it working.
This is another thing I like. jQuery Mobile is almost automatic. Once loaded, it magically does things to the pages. It uses "click hijacking" so that instead of loading a new page, the new page sweeps in the from the right- like you'd expect it to on a mobile device. It reformats many of the elements on the pages, like form elements, so that have the "look and feel" that mobile users expect. It preserves the "back" button, because users naturally look for that and many mobile web sites don't make that basic level of navigation easy.
jQuery Mobile takes advantage of something called Themeroller to build interfaces. It's a drag-and-drop color scheme builder. You can put together a branded interface in seconds and it's going to look the same on every device, and in every web browser.
Some of this consistency may be limiting. Your graphic designers are probably going to hate it because they want special buttons and they want different margins. If that's important, maybe this isn't your thing. Maybe you can get by making some changes to the stylesheets you build with Themeroller.
One of the coolest things about jQuery Mobile is that it works just as well on a non-mobile computer. When you build a web site with jQuery Mobile you are not building just a mobile web site. That site will function and appear exactly the same in a regular web browser on a regular computer. This is cool for two reasons.
One, you're building a web site ONCE. Some people will build a website for desktop computers, and then build another theme, template, or perhaps a completely different web site for mobile users. With jQuery Mobile, you build it once.
Two, this is a change in the way people should be thinking about their web sites. For a long time people have thought about two internets- the internet they use on their desktop computers, and the mobile internet. jQuery Mobile reminds us that there is only one internet and suggests that we build web sites that work consistently regardless of how you're connecting to the internet.