jQTouch is a JavaScript plugin which works with either Zepto.js or jQuery, and comes with smooth animations, navigation, and themes for mobile WebKit browsers (as found in iOS, Android, BlackBerry, and WebOS).
- Easy to install. Get up and running in a few minutes.
- Entirely customizable with selector options
- Theme support, including default Apple and jQTouch custom themes
- Callback functions throughout, including swipe and orientation change detection
- Zepto integration - Use Zepto.js instead of jQuery to cut down on precious bandwidth. Zepto.js features a similar API to jQuery, but optimized for WebKit and much smaller.
- Sass-based stylesheets, easily modified with variables and optimized for size.
- Image-less stylesheets -- Using Compass Recipes, we have recreated all of the gradients and background patterns with CSS. This way, they are resolution independent, dynamically theme-able, and lower bandwidth.
- Page history management and CSS3 page transitions, including 3D flip, cube, and swap
- Failover to 2D animations for devices that don't support 3D
- Easily allow apps to run in fullscreen mode with custom icons and startup screens
- The power of jQuery to build AJAX applications
- New demos: Clock and Todo
The easiest way to try out jQT is with the demo archive, which can be found in the release tab on Github:
Please look for the download (green button) with filename prefixed with jqt-demo
(ie, jqt-demo-<< version >>.tar.gz
.)
Once unzipped and untar, you can open package/demons/index.html
with any WebkitBrowser on a desktop.
Recently added features can be found at New and Noteworthy page.
Source code, issue tracking, and documentation are available on github.
Watch this video preview to see it in action.
We have quite a few dependencies at the moment, as we build with Compass/SASS for stylesheets, which is only available via Ruby. The actual build system, however, is built on Grunt.
Please make sure you have the following installed:
- Ruby — Comes default on Macs, Windows users can use RubyInstaller
- Sass & Compass — Install both with
sudo gem install compass
once you have Ruby/RubyGems installed - Node.js & NPM —
brew install node
- Grunt CLI — Install with
npm install -g grunt-cli
once you have Node.js as listed above. - Local node packages — Run
npm install
from this directory
Will create a build of jQTouch in the build/
directory, compiling any theme files and updating with source from the Zepto submodule. This must be run to preview jQTouch.
This task is used only for iterative development. It does not update submodule, nor clean the build. (The default
grunt task must be called once before this task.)
Will create the same build as grunt build
, but will continue to watch for file changes to theme and source files, compiling/copying them into build every time you save. If you have a livereload browser extension installed and enabled, the page will update live after every change. (The default
grunt task must be called once before this task.)
Only build the theme files. Typically, you'll want to use grunt watch
for developing a custom theme. (The default
grunt task must be called once before this task.)
Run our test suite. (The default
grunt task must be called once before this task.)
This is typically used internally for creating releases — It does everything the standard build does, but then additionally minifies all JS/CSS and updates the paths in demo files.
Jonathan Stark has created an excellent introduction to jQTouch as part of his book, Building iPhone Apps with HTML, CSS, and Javascript.
PeepCode did a screencast ($9), as well as a cheat sheet, which have been helpful to many people.
Created, and still occasionally maintained, by David Kaneda.
Maintained by Thomas Yip.
Special thanks to pinch/zoom and Jonathan Stark.
(c) 2009-2013 Sencha Labs.
jQTouch may be freely distributed under the MIT license. See LICENSE.txt for license.