SlideShare a Scribd company logo
1 of 98
Download to read offline
Patrick Crowley
  the.railsi.st
Mobile web apps
 using jQTouch
What’s your
mobile strategy?
• Website (aka “give up”)
• Website (aka “give up”)
• Website + mobile stylesheet
• Website (aka “give up”)
• Website + mobile stylesheet
• Native apps for iPhone and
 Android (awesome, but $$$)
• Optimize for mobile displays
• Optimize for mobile displays
• Reduce page load time
• Optimize for mobile displays
• Reduce page load time
• Reduce network traffic
• Optimize for mobile displays
• Reduce page load time
• Reduce network traffic
• Support gestures
Smartphone Market Share
                    RIM       iPhone        Windows    Android   Other




                                       9%
                                 9%
                                                      35%


                              19%




                                             28%



Source: Nielsen for Q1 2010
Mobile Browser Usage
                       iPhone            Android   RIM    Other




                                          6%
                                   13%




                                23%
                                                    58%




Source: Net Applications for May 2010
What does this mean?
• Website (aka “do nothing”)
• Website (aka “do nothing”)
• Website + mobile stylesheets
• Website (aka “do nothing”)
• Website + mobile stylesheets
• Native apps for iPhone and
 Android (awesome, but $$$)
• Website (aka “do nothing”)
• Website + mobile stylesheets
• Native apps for iPhone and
 Android (awesome, but $$$)

• Website + mobile web app
Mobile strategy = Webkit
Target mobile browsers
  people actually use.
• More than 81% of mobile
 browser traffic
• More than 81% of mobile
 browser traffic

• iOS (iPhone + iPod Touch)
• More than 81% of mobile
 browser traffic

• iOS (iPhone + iPod Touch)
• Android (1.5 and up)
• More than 81% of mobile
 browser traffic

• iOS (iPhone + iPod Touch)
• Android (1.5 and up)
• WebOS (Palm -> HP)
• More than 81% of mobile
 browser traffic

• iOS (iPhone + iPod Touch)
• Android (1.5 and up)
• WebOS (Palm -> HP)
• Blackberry (future)
What about... ?!?!
S T
 O A
T
Who cares?
Browsing already
sucks on these phones
So optimize for
awesome phones!
Why Webkit?
• Web standards
• Web standards
• Consistent rendering
• Web standards
• Consistent rendering
• Support for HTML5
• Web standards
• Consistent rendering
• Support for HTML5
• Animation
• Web standards
• Consistent rendering
• Support for HTML5
• Animation
• Offline caching
jQTouch
Web apps with native
   look and feel
jQuery + jQTouch + HTML
jQTouch 101
1. Getting started
<script type="text/javascript" src="http://www.google.com/
jsapi"></script>
<script type="text/javascript" src="http://www.google.com/
jsapi"></script>


<script type="text/javascript"> google.load("jquery",
"1.3.2");</script>
<script type="text/javascript" src="http://www.google.com/
jsapi"></script>


<script type="text/javascript"> google.load("jquery",
"1.3.2");</script>


<script src="jqtouch/jqtouch.min.js" type="application/x-
javascript" charset="utf-8"></script>
<script type="text/javascript" src="http://www.google.com/
jsapi"></script>


<script type="text/javascript"> google.load("jquery",
"1.3.2");</script>


<script src="jqtouch/jqtouch.min.js" type="application/x-
javascript" charset="utf-8"></script>


<style type="text/css" media="screen">@import "jqtouch/
jqtouch.min.css";</style>
<script type="text/javascript" src="http://www.google.com/
jsapi"></script>


<script type="text/javascript"> google.load("jquery",
"1.3.2");</script>


<script src="jqtouch/jqtouch.min.js" type="application/x-
javascript" charset="utf-8"></script>


<style type="text/css" media="screen">@import "jqtouch/
jqtouch.min.css";</style>


<style type="text/css" media="screen">@import "themes/jqt/
theme.min.css";</style>
$.jQTouch({
    icon: 'jqtouch.png',
    statusBar: 'black-translucent',
    preloadImages: [
        'themes/jqt/img/chevron_white.png',
        'themes/jqt/img/bg_row_select.gif',
        'themes/jqt/img/back_button_clicked.png',
        'themes/jqt/img/button_clicked.png'
        ]
});
2. Basic page layout
index.html
<body>
  <div class="current" id="home">
    <div class="toolbar">
       <h1>jQTouch Demo</h1>
    </div>

    <!-- CONTENT GOES HERE -->

  </div>
</body>
#about




              #blog

index.html

             #contact




              /video
index.html
<div id="about">
  <div class="toolbar">
    <h1>About Us</h1>
  </div>
</div>

<div id="blog">
  <div class="toolbar">
    <h1>Blog</h1>
  </div>
</div>

<div id="about">
  <div class="toolbar">
    <h1>Contact Us</h1>
  </div>
</div>
#about




              #blog

index.html

             #contact




              /video
video.html
<div id="video">
  <div class="toolbar">
    <h1>Video</h1>
  </div>
</div>
Markup-based UI
Classes => behavior
• Toolbars
• Toolbars
• Lists
• Toolbars
• Lists
• Buttons
• Toolbars
• Lists
• Buttons
• Forms
• Toolbars
• Lists
• Buttons
• Forms
• Navigation
Toolbar
<div id="about">
  <div class="toolbar">
    <h1>About Us</h1>
  </div>
</div>

<div id="blog">
  <div class="toolbar">
    <h1>Blog</h1>
  </div>
</div>

<div id="about">
  <div class="toolbar">
    <h1>Contact Us</h1>
  </div>
</div>
List
<ul class="rounded">
  <li class="arrow"><a   href="#about">About Us</a></li>
  <li class="arrow"><a   href="#blog">Blog</a></li>
  <li class="arrow"><a   href="#contact">Contact Us</a></li>
  <li class="arrow"><a   href="/video">Video</a></li>
</ul>
UI Demo
Sample app
Debugging
• iPhone Simulator
• iPhone Simulator
• Android Simulator
• iPhone Simulator
• Android Simulator
• Actual devices!!!
Mobile detection
// Mobile clients
if (navigator.userAgent.match(/Android/i) ||
    navigator.userAgent.match(/webOS/i) ||
    navigator.userAgent.match(/iPhone/i) ||
    navigator.userAgent.match(/iPod/i)) {

    // Redirect to mobile app
    location.href = "/mobile";

}
Version switching
<--->
Dynamic content filters
// Disable links
$('.page').live('pageAnimationStart',
function(){
    $('p a').attr("href", "");
});
Resources
• jqtouch.com
• jqtouch.com
• github.com/senchalabs/jQTouch
• jqtouch.com
• github.com/senchalabs/jQTouch
• peepcode.com/products/jqtouch
• jqtouch.com
• github.com/senchalabs/jQTouch
• peepcode.com/products/jqtouch
• glyphish.com
Coming soon
Sencha
Ext JS + jQTouch + Raphaël
New roadmap and
maintainer for jQTouch
The End

More Related Content

Viewers also liked

Viewers also liked (8)

Paperclip
PaperclipPaperclip
Paperclip
 
Migrating Legacy Data
Migrating Legacy DataMigrating Legacy Data
Migrating Legacy Data
 
Trucker
TruckerTrucker
Trucker
 
CSS for iPhones
CSS for iPhonesCSS for iPhones
CSS for iPhones
 
Compass
CompassCompass
Compass
 
Migrating Legacy Data (Ruby Midwest)
Migrating Legacy Data (Ruby Midwest)Migrating Legacy Data (Ruby Midwest)
Migrating Legacy Data (Ruby Midwest)
 
Compass & Bearings
Compass & BearingsCompass & Bearings
Compass & Bearings
 
Compass
CompassCompass
Compass
 

Similar to Mobile web apps

The future is mobile
The future is mobileThe future is mobile
The future is mobileShannon Smith
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011davyjones
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Todaydavyjones
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5Ron Reiter
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 
Image-ine That: Image Optimization for Conversion Maximization
Image-ine That: Image Optimization for Conversion MaximizationImage-ine That: Image Optimization for Conversion Maximization
Image-ine That: Image Optimization for Conversion MaximizationYottaa
 
Responsive Web Design - Why and How
Responsive Web Design - Why and HowResponsive Web Design - Why and How
Responsive Web Design - Why and HowJudi Wunderlich
 
Mobilism 2011: How to put the mobile in the mobile web
Mobilism 2011: How to put the mobile in the mobile webMobilism 2011: How to put the mobile in the mobile web
Mobilism 2011: How to put the mobile in the mobile webJenifer Hanen
 
Mobile SEO (English Version)
Mobile SEO (English Version)Mobile SEO (English Version)
Mobile SEO (English Version)ssuserd60633
 
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | Oxiem
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | OxiemGet Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | Oxiem
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | OxiemLessing-Flynn
 
Mobile Web High Performance
Mobile Web High PerformanceMobile Web High Performance
Mobile Web High PerformanceAmjad Rafique
 
High Performance Distribution for Harvard Video, Mobile and the Gazette
High Performance Distribution for Harvard Video, Mobile and the GazetteHigh Performance Distribution for Harvard Video, Mobile and the Gazette
High Performance Distribution for Harvard Video, Mobile and the GazetteChris Traganos
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make itJonathan Snook
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesPlatypus
 
Responding to the challenge of the mobile web (2012)
Responding to the challenge of the mobile web (2012)Responding to the challenge of the mobile web (2012)
Responding to the challenge of the mobile web (2012)Graham Bird
 

Similar to Mobile web apps (20)

The future is mobile
The future is mobileThe future is mobile
The future is mobile
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
Web app
Web appWeb app
Web app
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5
 
Web app
Web appWeb app
Web app
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Image-ine That: Image Optimization for Conversion Maximization
Image-ine That: Image Optimization for Conversion MaximizationImage-ine That: Image Optimization for Conversion Maximization
Image-ine That: Image Optimization for Conversion Maximization
 
Mobile for web developers
Mobile for web developersMobile for web developers
Mobile for web developers
 
Responsive Web Design - Why and How
Responsive Web Design - Why and HowResponsive Web Design - Why and How
Responsive Web Design - Why and How
 
Adobe & HTML5
Adobe & HTML5Adobe & HTML5
Adobe & HTML5
 
Mobilism 2011: How to put the mobile in the mobile web
Mobilism 2011: How to put the mobile in the mobile webMobilism 2011: How to put the mobile in the mobile web
Mobilism 2011: How to put the mobile in the mobile web
 
Mobile SEO (English Version)
Mobile SEO (English Version)Mobile SEO (English Version)
Mobile SEO (English Version)
 
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | Oxiem
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | OxiemGet Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | Oxiem
Get Mobile | Mobile & Digital Marketing | Crystal Olig | Upward | Oxiem
 
Mobile Web High Performance
Mobile Web High PerformanceMobile Web High Performance
Mobile Web High Performance
 
High Performance Distribution for Harvard Video, Mobile and the Gazette
High Performance Distribution for Harvard Video, Mobile and the GazetteHigh Performance Distribution for Harvard Video, Mobile and the Gazette
High Performance Distribution for Harvard Video, Mobile and the Gazette
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make it
 
Simple mobile Websites
Simple mobile WebsitesSimple mobile Websites
Simple mobile Websites
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
 
Responding to the challenge of the mobile web (2012)
Responding to the challenge of the mobile web (2012)Responding to the challenge of the mobile web (2012)
Responding to the challenge of the mobile web (2012)
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Recently uploaded (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

Mobile web apps