SlideShare a Scribd company logo
Web Delivery for ALL!
Who?
Marc Grabanski
!
!

jQuery UI Datepicker
!

MarcGrabanski.com
!

LOTS of UI Dev
Currently...
UI/UX Development Consultant
!
!
!

Publisher of:

http://FrontendMasters.com
The Great Promise
of the Web

The web is for everyone
and all can view it
Introduction to jQuery Mobile - Web Deliver for All
Not “Mobile Only”
Mobile First
Desktop too!
Source
Your Sources
I visited

and talked to

about
Why jQuery
Mobile?
4 Main Reasons to
Use jQuery Mobile
#1. Ajaxified
Navigation
Faster subsequent page loads

Friendly Ajax URLs
#2. Layout and
Theming Engine
Quickly style and extend styles
#3
Touch Friendly Inputs
(and widgets)
Improved UX for form inputs
#4
Widest Browser Coverage

Web living up to it’s promise
Devices Tested
jQuery Mobile Testing Lab
Fully Supported
•
•
•
•
•
•
•

iOs 3.2+, Android 2.1+/Honeycomb
Windows Phone 7
Blackberry 6.0/Playbook
Palm WebOS 1.4+
Mobile Opera & Mobile Firefox
Amazon Kindle 3 & Fire
Desktop Chrome, FF, IE 7+, Opera
Progressive
Enhancement
C-Grade: Basic HTML

+
++

B-Grade: Enhanced Style, No Ajax
A-Grade: Full Enhanced Style,
Ajax and CSS Transitions
You’ll always
see...something
it’s alive!
Gallery
http://jqmgallery.com
and growing...

http://www.google.com/trends/?q=jquery+mobile
Two popular mobile frameworks

“Web First”

“App First”

http://www.google.com/trends/?q=jquery+mobile,+sencha,+dojo
+mobile,+jqmobi
jQuery Mobile
+ Adobe
Embedded into Creative Suite
Sponsors jQuery Mobile Dev
Dev Snapshot
http://jquerymobile.com/test
One More
*Magical* File
Get the
(Coding)Party
Including Latest:
!

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/
jquery.mobile-1.2.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/
jquery.mobile-1.2.0.min.js"></script>

http://jquerymobile.com/download/
#1 - Ajaxified
Navigation
No page refresh?!
How does that work?
Looks for
href and action
in your HTML
Auto-Ajax
Links
1. Ajax gets href=”page.html” 

(unless data-ajax=false)
2. Slides in New Content
3. Updates URL

(with <body>...</body> 

or data-role=page)
/index.html

*click*
/index.html

/page.html

*load*
/index.html

/page.html

*slide*
ndex.html

/page.html

*done*
Page Transitions
•

<a data-transition=pop>...</a>

(slide, slideup, slidedown, pop,
fade, flip)
!

•

<a data-transition=pop 

data-direction=reverse>...</a>

http://jquerymobile.com/demos/1.2.0/docs/pages/pagetransitions.html
Default transition
is now fade
(more webby)
Pages w/out Ajax
<div data-roll=page 

id=page1>...</div>
<div data-roll=page

id=page2>...</div>
!

<a href=”#page1”>Page 1</a>
<a href=”#page2”>Page 2</a>
http://jquerymobile.com/demos/1.2.0/docs/pages/multipagetemplate.html
No more
#/crap/urls.html
Pushstate on Relative URLs




/index.html
to /index.html#/foo.html
to /foo.html
Auto-Ajax
Forms
1. Form action=”page.html”
POST Ajax
2. Slides in New Content
3. Updates URL

(same as links)

I don’t use auto-ajax
forms. Disable with
data-ajax=false
#2 - Layout and
Theming
Looking for
data-* attributes
Play a Role
data-role=*
page, header, content, footer,
listview, list-divider, button,
controlgroup
Structure
!

<div data-role="page">
<div data-role="header">...</div>
<div data-role="content">...</div>
<div data-role="footer">...</div>
</div>

http://jquerymobile.com/demos/1.2.0/docs/pages/page-anatomy.html
Magical
<div data-role=header>...</div>

Markup
<div data-role=content>...</div>

Zones
<div data-role=footer>...</div>
Docs Structure
<div data-role=page>
<div data-role=content>

<div data-role=footer>
Listview
Listview
<ul data-role=listview ...>
<li data-role=list-divider>...</li>
<li><a href=”...”></a></li>
<li><a href=”...”></a></li>
<li><a href=”...”></a></li>
<li><a href=”...”></a></li>
<li><a href=”...”></a></li>
...
</ul>
data-* Theme
Attributes
• data-theme=[a-f]
• data-[element]theme=[a-f]
• <ul data-dividertheme=[a-f]>
• <ul data-inset=true>
http://jquerymobile.com/demos/1.2.0/docs/api/themes.html
List Theming

<ul data-theme=[a-f]>

http://jquerymobile.com/demos/1.2.0/docs/api/themes.html
List Theming
<ul data-theme=b>
<li>...</li>
<li>...</li>
</ul>
Content Theming
ui-[body|bar]-[a-f]
class=”ui-bar ui-bar-c”

class=”ui-body ui-body-b”
e.g. Docs Theming

<ul data-inset=true
data-dividertheme=b ...>

<ul data-inset=true
data-dividertheme=f ...>
Responsive Docs Example
Tablet and Desktop
Mobile

class=content-primary

class=content-secondary
jQuery Mobile
ThemeRoller

http://jquerymobile.com/themeroller/index.php
Reusable
Widgets
Buttons

Link as a button
<a data-role=button ...>slidedown</a>

http://jquerymobile.com/demos/1.2.0/docs/buttons/buttonstypes.html
data-* Button
Theming
<button data-icon=*>

arrow-r, delete, plus, minus, gear,
grid, refresh, etc.

http://jquerymobile.com/demos/1.2.0/docs/buttons/
buttons-icons.html
data-* Button
Theming
<button data-inline=true>
<button data-icon=delete

data-iconpos=right>

http://jquerymobile.com/demos/1.2.0/docs/buttons/
buttons-icons.html
Dialog
<a data-rel=dialog>

http://jquerymobile.com/demos/1.2.0/docs/pages/page-dialogs.html
Control Group
<div data-role=controlgroup

data-type=horizontal>
<a data-role=button>Yes</a>
<a data-role=button>No</a>
<a data-role=button>Maybe</a>
</div>
http://jquerymobile.com/demos/1.2.0/docs/buttons/
buttons-grouped.html
Navbar
data-role=navbar

http://jquerymobile.com/demos/1.2.0/docs/toolbars/docs-navbar.html
Navbar w/Icons

http://jquerymobile.com/demos/1.2.0/docs/toolbars/
docs-navbar.html
Filter Bar

<ul data-filter=true>

http://jquerymobile.com/demos/1.2.0/docs/lists/lists-search.html
Popup Widget

http://jquerymobile.com/demos/1.2.0/docs/pages/popup/index.html
#3
Touch-friendly
Form Inputs
Enhance Form
Elements
Default

MOBILIZED!
Introduction to jQuery Mobile - Web Deliver for All
Slider
<input type=range 

value=50 min=0 max=100>

http://jquerymobile.com/demos/1.2.0/docs/forms/slider/
Search Input
<input type=search>

http://jquerymobile.com/demos/1.2.0/docs/forms/search/
Checkbox Set

http://jquerymobile.com/demos/1.2.0/docs/forms/checkboxes/
Radio Button Set

http://jquerymobile.com/demos/1.2.0/docs/forms/radiobuttons/
Flip Switch
<select data-roll=slider>
<option>Switch Off</option>
<option>Switch On</option>
</select>

http://jquerymobile.com/demos/1.2.0/docs/forms/switch/
data-native-menu=true
data-native-menu=false

http://jquerymobile.com/demos/1.2.0/docs/forms/selects/custom.html
Auto Grow Textareas

http://jquerymobile.com/demos/1.2.0/docs/forms/textinputs/
index.html
HTML5 Input Types
(not just jQuery Mobile)
<input type=password>
<input type=number>
<input type=email>
<input type=url>
<input type=tel>
Misc Notes
Widgets
•
•
•
•
•
•
•
•

page sections
checkboxradio
select
slider
textinput
links
collapsible
popup

•
•
•
•
•
•
•
•

controlgroup
fieldcontain
fixheaderfooter
button
listview
navbar
grid
dialog
Download Builder

http://jquerymobile.com/download-builder/
Snippets
Configure jQM
$(document).on("mobileinit", function(){
$.extend($.mobile , { foo: bar });
});
New DOM Ready
$(document).on(“pagecreate”, function(e) {
// do somefin’ will ya?
});
Modifying DOM
$page

.append(“<a data-role=button>Button</a>”)

.trigger(‘create’)
Initializes UI components
Viewport Tag
Not auto-injected.
<meta name="viewport"
content="width=device-width,
initial-scale=1">
No JavaScript
Scroll
Native overflow support
-webkit-overflow-scrolling: touch;
No JavaScript “fake scrolling”
Still problems with it
CSS Transitions
•

New transitions turn and flow 

as of 1.1

•

Flip on Android is Stupid

(does a cartwheel)
Plugins and
Resources

http://jquerymobile.com/resources/
jQuery Mobile Router
var approuter = new $.mobile.Router([
{ "#certainPage": { handler: "foo", events: "s" } },
{ "#certainPage": { handler: "bar", events: "h" } }
], {
foo: function(...){...},
bar: function(...){...}
}, options);

https://github.com/azicchetti/jquerymobile-router
jQuery Mobile
Router Lite
$.mobile.routerlite.routeinit("/admin",
function(page, path){
doSomething();
});
$.mobile.routerlite.routechange("/admin",
function(page, path){
doSomething();
});

https://github.com/1Marc/jquery-mobile-routerlite
iOS Theme

http://taitems.tumblr.com/post/7240874402/ios-inspired-jquerymobile-theme-jquery-mobile
Thanks!
Marc Grabanski
@1marc

More Related Content

PPTX
Building jQuery Mobile Web Apps
Operation Mobile
 
PDF
What is jQuery?
tina3reese7
 
PDF
jQuery Mobile: Progressive Enhancement with HTML5
Todd Anderson
 
PPTX
Introduction to jQuery Mobile
ejlp12
 
PDF
ActiveDOM
Felix Geisendörfer
 
PPTX
Microdata semantic-extend
Seek Tan
 
PDF
Accessibility - A feature you can build
Monika Piotrowicz
 
PPT
jQuery Mobile with HTML5
madhurpgarg
 
Building jQuery Mobile Web Apps
Operation Mobile
 
What is jQuery?
tina3reese7
 
jQuery Mobile: Progressive Enhancement with HTML5
Todd Anderson
 
Introduction to jQuery Mobile
ejlp12
 
Microdata semantic-extend
Seek Tan
 
Accessibility - A feature you can build
Monika Piotrowicz
 
jQuery Mobile with HTML5
madhurpgarg
 

What's hot (20)

PDF
Advanced JQuery Mobile tutorial with Phonegap
Rakesh Jha
 
PDF
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dee Sadler
 
PDF
Selenium for-ops
Łukasz Proszek
 
PDF
Fundamental JQuery
Achmad Solichin
 
PDF
Findability Bliss Through Web Standards
Aarron Walter
 
PPTX
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
St. Petersburg College
 
PDF
Overview on jQuery mobile
Md. Ziaul Haq
 
PPTX
Introduction to HTML5 & CSS3
Pradeep Varadaraja Banavara
 
PPTX
Introduction to the jQuery mobile framework
Rishabh Rao
 
PDF
An Introduction To HTML5
Robert Nyman
 
PDF
Understanding email hacks - Litmus Live London TEDC16
Mark Robbins
 
PDF
HTML5 and the dawn of rich mobile web applications pt 2
James Pearce
 
PPTX
Introduction to jquery mobile with Phonegap
Rakesh Jha
 
PDF
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
PPTX
SPSNH 2014 - The SharePoint & jQueryGuide
Mark Rackley
 
PDF
A Snapshot of the Mobile HTML5 Revolution
James Pearce
 
PDF
Building Cross Platform Mobile Web Apps
James Pearce
 
PPTX
Challenges going mobile
Christian Rokitta
 
PDF
HTML5 and the web of tomorrow!
Christian Heilmann
 
PPTX
SPSDenver - SharePoint & jQuery - What I wish I would have known
Mark Rackley
 
Advanced JQuery Mobile tutorial with Phonegap
Rakesh Jha
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dee Sadler
 
Selenium for-ops
Łukasz Proszek
 
Fundamental JQuery
Achmad Solichin
 
Findability Bliss Through Web Standards
Aarron Walter
 
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
St. Petersburg College
 
Overview on jQuery mobile
Md. Ziaul Haq
 
Introduction to HTML5 & CSS3
Pradeep Varadaraja Banavara
 
Introduction to the jQuery mobile framework
Rishabh Rao
 
An Introduction To HTML5
Robert Nyman
 
Understanding email hacks - Litmus Live London TEDC16
Mark Robbins
 
HTML5 and the dawn of rich mobile web applications pt 2
James Pearce
 
Introduction to jquery mobile with Phonegap
Rakesh Jha
 
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
SPSNH 2014 - The SharePoint & jQueryGuide
Mark Rackley
 
A Snapshot of the Mobile HTML5 Revolution
James Pearce
 
Building Cross Platform Mobile Web Apps
James Pearce
 
Challenges going mobile
Christian Rokitta
 
HTML5 and the web of tomorrow!
Christian Heilmann
 
SPSDenver - SharePoint & jQuery - What I wish I would have known
Mark Rackley
 
Ad

Viewers also liked (20)

PDF
Airbnb tech talk: Levi Weintraub on webkit
naseemh
 
PDF
Pushing Python: Building a High Throughput, Low Latency System
Kevin Ballard
 
PDF
CSS/SVG Matrix Transforms
Marc Grabanski
 
PDF
jQuery Essentials
Marc Grabanski
 
PDF
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Nick Landry
 
PPTX
Impact of Open Source
Anne-Gaelle Colom
 
PDF
Unit testing
Leonardo Balter
 
PPTX
jQuery Conference 2012 keynote
dmethvin
 
PDF
HTML5 Essentials
Marc Grabanski
 
PPTX
Introduction to Storm
Chandler Huang
 
PPTX
DNS Security Presentation ISSA
Srikrupa Srivatsan
 
PDF
Анонимные записи в Haskell. Никита Волков
Юрий Сыровецкий
 
PDF
Монады для барабанщиков. Антон Холомьёв
Юрий Сыровецкий
 
PDF
Intro to Functional Programming
Hugo Firth
 
PDF
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
mumrah
 
PPTX
Category theory, Monads, and Duality in the world of (BIG) Data
greenwop
 
PPTX
From cache to in-memory data grid. Introduction to Hazelcast.
Taras Matyashovsky
 
PDF
Cassandra Introduction & Features
DataStax Academy
 
PDF
Introduction to MongoDB
Mike Dirolf
 
PDF
Etsy Activity Feeds Architecture
Dan McKinley
 
Airbnb tech talk: Levi Weintraub on webkit
naseemh
 
Pushing Python: Building a High Throughput, Low Latency System
Kevin Ballard
 
CSS/SVG Matrix Transforms
Marc Grabanski
 
jQuery Essentials
Marc Grabanski
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Nick Landry
 
Impact of Open Source
Anne-Gaelle Colom
 
Unit testing
Leonardo Balter
 
jQuery Conference 2012 keynote
dmethvin
 
HTML5 Essentials
Marc Grabanski
 
Introduction to Storm
Chandler Huang
 
DNS Security Presentation ISSA
Srikrupa Srivatsan
 
Анонимные записи в Haskell. Никита Волков
Юрий Сыровецкий
 
Монады для барабанщиков. Антон Холомьёв
Юрий Сыровецкий
 
Intro to Functional Programming
Hugo Firth
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
mumrah
 
Category theory, Monads, and Duality in the world of (BIG) Data
greenwop
 
From cache to in-memory data grid. Introduction to Hazelcast.
Taras Matyashovsky
 
Cassandra Introduction & Features
DataStax Academy
 
Introduction to MongoDB
Mike Dirolf
 
Etsy Activity Feeds Architecture
Dan McKinley
 
Ad

Similar to Introduction to jQuery Mobile - Web Deliver for All (20)

PPTX
Jquery mobile book review
Islam AlZatary
 
PPTX
jQuery Mobile
mowd8574
 
PPTX
Introduction to j query mobile framework
Shreerang Patwardhan
 
PDF
jQuery Mobile Introduction
Joris Graaumans
 
PPTX
Jquery mobile
Predhin Sapru
 
PPT
jQuery Mobile
Doncho Minkov
 
PPTX
jQuery Mobile
Naeem Junejo
 
PPTX
Jquery Mobile
Logical Minds
 
PPTX
Jquery mobile
Chris Ward
 
PDF
JQuery mobile
Gary Yeh
 
PPTX
Intro to Jquery Mobile
James Quick
 
PPTX
Chapter3 mo
Pon Tovave
 
PPTX
jQuery Mobile
Yaowaluck Promdee
 
PDF
Mume JQueryMobile Intro
Gonzalo Parra
 
PPTX
J query mobile tech talk
woliverj
 
PPT
Going Mobile
Stephen G
 
PDF
Introduction to jQuery Mobile
David Hudson
 
PDF
20111014 mu me_j_querymobile
Erik Duval
 
PPT
Intro j query_mobile_mojo
Jeff Tillett
 
PDF
Jquery mobile tutorial
HarikaReddy115
 
Jquery mobile book review
Islam AlZatary
 
jQuery Mobile
mowd8574
 
Introduction to j query mobile framework
Shreerang Patwardhan
 
jQuery Mobile Introduction
Joris Graaumans
 
Jquery mobile
Predhin Sapru
 
jQuery Mobile
Doncho Minkov
 
jQuery Mobile
Naeem Junejo
 
Jquery Mobile
Logical Minds
 
Jquery mobile
Chris Ward
 
JQuery mobile
Gary Yeh
 
Intro to Jquery Mobile
James Quick
 
Chapter3 mo
Pon Tovave
 
jQuery Mobile
Yaowaluck Promdee
 
Mume JQueryMobile Intro
Gonzalo Parra
 
J query mobile tech talk
woliverj
 
Going Mobile
Stephen G
 
Introduction to jQuery Mobile
David Hudson
 
20111014 mu me_j_querymobile
Erik Duval
 
Intro j query_mobile_mojo
Jeff Tillett
 
Jquery mobile tutorial
HarikaReddy115
 

Recently uploaded (20)

PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
PPTX
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
PDF
Software Development Company | KodekX
KodekX
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
Coupa-Overview _Assumptions presentation
annapureddyn
 
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Beyond Automation: The Role of IoT Sensor Integration in Next-Gen Industries
Rejig Digital
 
Software Development Company | KodekX
KodekX
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Doc9.....................................
SofiaCollazos
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 

Introduction to jQuery Mobile - Web Deliver for All