SlideShare une entreprise Scribd logo
1  sur  20
jQuery Mobile, Backbone,
   and ASP.NET MVC
A Framework for Making Mobile Web Applications


 SpeakerRate - http://spkr8.com/t/11621
Who am I?
I am a Microsoft Certified Solution Developer and I’ve
been developing software since 1979. Since 2009, I have
been focused on developing mobile applications, for 
iPhone, Android, the mobile web, and Windows Phone 7.
What we aren’t going
     to cover
• HTML 5
• Client Side Validation
• SQL Server or other databases
• Security
• Offline
What We Will Cover   
• Web Apps. vs Device Apps.
• Components
• Framework
• Why Do It This Way?
• Tools of the Trade
• Tips from the Trenches
• Summary
Web Apps                     Device Apps

  Can migrate web skills        Longer learning curve
    One source base              Many source bases
  Deploy when you want       Deployment needs approval
You choose when to update   User chooses when to update
 No device memory used          Uses device memory
   Difficult to monetize        Monetization is built-in
 Restricted device access   Full access to device hardware
         Slower                        Faster
Components

• ASP.NET MVC
• jQuery
• jQuery Mobile
• Underscore.js
• Backbone.js
ASP.NET MVC
ASP.NET MVC gives you a powerful, patterns-based way
to build dynamic websites that enables a clean separation
of concerns and that gives you full control over markup
for enjoyable, agile development. ASP.NET MVC includes
many features that enable fast, TDD-friendly
development for creating sophisticated applications that
use the latest web standards.
jQuery is a fast and concise JavaScript Library that
simplifies HTML document traversing, event handling,
animating, and Ajax interactions for rapid web
development. jQuery is designed to change the way that
you write JavaScript.
A unified, HTML5-based user interface system for all
popular mobile device platforms, built on the rock-solid
jQuery and jQuery UI foundation. Its lightweight code is
built with progressive enhancement, and has a flexible,
easily theme-able design. 

Requires jQuery.
Underscore is a utility-belt library for JavaScript that
provides a lot of the functional programming support
that you would expect in Prototype.js (or Ruby), but
without extending any of the built-in JavaScript objects. 
Backbone supplies structure to JavaScript-heavy
applications by providing models with key-value binding
and custom events, collections with a rich API of
enumerable functions, views with declarative event
handling, and connects it all to your existing application
over a RESTful JSON interface.

Requires Underscore and jQuery.
The Framework
•   ASP.NET MVC 

    •   Serves the initial page

    •   Serves data in a RESTful fashion

•   jQuery/jQuery Mobile 

    •   Handles the UI

•   Backbone 

    •   Handles the data on client

•   The Kernel

    •   Ties the pages and the JavaScript together
Why Do It This Way?

• Best User Experience (think speed)
• Lower Server Utilization
• Easier Maintenance
Tools of the Trade

• Chrome Browser (other webkit browser)
• Fiddler2
• Opera Mobile Emulator
• Adobe Shadow (WEINRE)
7 Tips from the Trenches
• Beware of Browser Madness
• Use an Analog
• Use Unique Ids on Markup
• Reference the active page
• Use the pageinit event not $(document).ready()
• Avoid Sloppy JavaScript
• Always Test on a Device
Next Steps

• Download the source code and play with it
• Minify the code
• Use CDNs for open source code
Summary
jQuery Mobile is an easy to use framework which
   enables you to create mobile apps quickly. 
Links
•   ASP.NET MVC - http://www.asp.net/

•   jQuery - http://jquery.com/

•   jQuery Mobile - http://jquerymobile.com/

•   Underscore - http://documentcloud.github.com/underscore
    Backbone - http://documentcloud.github.com/backbone

•   JSLint - http://jslint.com/

•   Opera - http://www.opera.com/developer/tools/mobile/

•   Adobe Shadow - http://labs.adobe.com/technologies/shadow/
Books
       jQuery Mobile
           Jon Reid
Sebastopol, CA: O’Reilly Media
          Inc., 2011
 Master Mobile Web Apps with
     jQuery Mobile 2nd ed.
          Matt Doyle
      Brighton, UK: Elated
  Communications Ltd, 2011
Please Rate My Talk:
  SpeakerRate - http://spkr8.com/t/11621



  The Source Code is on GitHub at:
https://github.com/Rockncoder/JQMContacts

Contenu connexe

Plus de Troy Miles

Fast C++ Web Servers
Fast C++ Web ServersFast C++ Web Servers
Fast C++ Web ServersTroy Miles
 
Node Boot Camp
Node Boot CampNode Boot Camp
Node Boot CampTroy Miles
 
AWS Lambda Function with Kotlin
AWS Lambda Function with KotlinAWS Lambda Function with Kotlin
AWS Lambda Function with KotlinTroy Miles
 
React Native One Day
React Native One DayReact Native One Day
React Native One DayTroy Miles
 
React Native Evening
React Native EveningReact Native Evening
React Native EveningTroy Miles
 
Intro to React
Intro to ReactIntro to React
Intro to ReactTroy Miles
 
React Development with the MERN Stack
React Development with the MERN StackReact Development with the MERN Stack
React Development with the MERN StackTroy Miles
 
Angular Application Testing
Angular Application TestingAngular Application Testing
Angular Application TestingTroy Miles
 
What is Angular version 4?
What is Angular version 4?What is Angular version 4?
What is Angular version 4?Troy Miles
 
Angular Weekend
Angular WeekendAngular Weekend
Angular WeekendTroy Miles
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN StackTroy Miles
 
Functional Programming in JavaScript
Functional Programming in JavaScriptFunctional Programming in JavaScript
Functional Programming in JavaScriptTroy Miles
 
Functional Programming in Clojure
Functional Programming in ClojureFunctional Programming in Clojure
Functional Programming in ClojureTroy Miles
 
MEAN Stack Warm-up
MEAN Stack Warm-upMEAN Stack Warm-up
MEAN Stack Warm-upTroy Miles
 
The JavaScript You Wished You Knew
The JavaScript You Wished You KnewThe JavaScript You Wished You Knew
The JavaScript You Wished You KnewTroy Miles
 
Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1Troy Miles
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutesTroy Miles
 
Quick & Dirty & MEAN
Quick & Dirty & MEANQuick & Dirty & MEAN
Quick & Dirty & MEANTroy Miles
 
A Quick Intro to ReactiveX
A Quick Intro to ReactiveXA Quick Intro to ReactiveX
A Quick Intro to ReactiveXTroy Miles
 

Plus de Troy Miles (20)

Fast C++ Web Servers
Fast C++ Web ServersFast C++ Web Servers
Fast C++ Web Servers
 
Node Boot Camp
Node Boot CampNode Boot Camp
Node Boot Camp
 
AWS Lambda Function with Kotlin
AWS Lambda Function with KotlinAWS Lambda Function with Kotlin
AWS Lambda Function with Kotlin
 
React Native One Day
React Native One DayReact Native One Day
React Native One Day
 
React Native Evening
React Native EveningReact Native Evening
React Native Evening
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
React Development with the MERN Stack
React Development with the MERN StackReact Development with the MERN Stack
React Development with the MERN Stack
 
Angular Application Testing
Angular Application TestingAngular Application Testing
Angular Application Testing
 
ReactJS.NET
ReactJS.NETReactJS.NET
ReactJS.NET
 
What is Angular version 4?
What is Angular version 4?What is Angular version 4?
What is Angular version 4?
 
Angular Weekend
Angular WeekendAngular Weekend
Angular Weekend
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN Stack
 
Functional Programming in JavaScript
Functional Programming in JavaScriptFunctional Programming in JavaScript
Functional Programming in JavaScript
 
Functional Programming in Clojure
Functional Programming in ClojureFunctional Programming in Clojure
Functional Programming in Clojure
 
MEAN Stack Warm-up
MEAN Stack Warm-upMEAN Stack Warm-up
MEAN Stack Warm-up
 
The JavaScript You Wished You Knew
The JavaScript You Wished You KnewThe JavaScript You Wished You Knew
The JavaScript You Wished You Knew
 
Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1
 
Build a Game in 60 minutes
Build a Game in 60 minutesBuild a Game in 60 minutes
Build a Game in 60 minutes
 
Quick & Dirty & MEAN
Quick & Dirty & MEANQuick & Dirty & MEAN
Quick & Dirty & MEAN
 
A Quick Intro to ReactiveX
A Quick Intro to ReactiveXA Quick Intro to ReactiveX
A Quick Intro to ReactiveX
 

Dernier

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
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
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
 
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
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
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
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
"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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Dernier (20)

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, ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
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...
 
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...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
"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 ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

jQuery Mobile, Backbone, and ASP.NET MVC

  • 1. jQuery Mobile, Backbone, and ASP.NET MVC A Framework for Making Mobile Web Applications SpeakerRate - http://spkr8.com/t/11621
  • 2. Who am I? I am a Microsoft Certified Solution Developer and I’ve been developing software since 1979. Since 2009, I have been focused on developing mobile applications, for  iPhone, Android, the mobile web, and Windows Phone 7.
  • 3. What we aren’t going to cover • HTML 5 • Client Side Validation • SQL Server or other databases • Security • Offline
  • 4. What We Will Cover    • Web Apps. vs Device Apps. • Components • Framework • Why Do It This Way? • Tools of the Trade • Tips from the Trenches • Summary
  • 5. Web Apps Device Apps Can migrate web skills Longer learning curve One source base Many source bases Deploy when you want Deployment needs approval You choose when to update User chooses when to update No device memory used Uses device memory Difficult to monetize Monetization is built-in Restricted device access Full access to device hardware Slower Faster
  • 6. Components • ASP.NET MVC • jQuery • jQuery Mobile • Underscore.js • Backbone.js
  • 7. ASP.NET MVC ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that enables a clean separation of concerns and that gives you full control over markup for enjoyable, agile development. ASP.NET MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards.
  • 8. jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.
  • 9. A unified, HTML5-based user interface system for all popular mobile device platforms, built on the rock-solid jQuery and jQuery UI foundation. Its lightweight code is built with progressive enhancement, and has a flexible, easily theme-able design.  Requires jQuery.
  • 10. Underscore is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects. 
  • 11. Backbone supplies structure to JavaScript-heavy applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing application over a RESTful JSON interface. Requires Underscore and jQuery.
  • 12. The Framework • ASP.NET MVC  • Serves the initial page • Serves data in a RESTful fashion • jQuery/jQuery Mobile  • Handles the UI • Backbone  • Handles the data on client • The Kernel • Ties the pages and the JavaScript together
  • 13. Why Do It This Way? • Best User Experience (think speed) • Lower Server Utilization • Easier Maintenance
  • 14. Tools of the Trade • Chrome Browser (other webkit browser) • Fiddler2 • Opera Mobile Emulator • Adobe Shadow (WEINRE)
  • 15. 7 Tips from the Trenches • Beware of Browser Madness • Use an Analog • Use Unique Ids on Markup • Reference the active page • Use the pageinit event not $(document).ready() • Avoid Sloppy JavaScript • Always Test on a Device
  • 16. Next Steps • Download the source code and play with it • Minify the code • Use CDNs for open source code
  • 17. Summary jQuery Mobile is an easy to use framework which enables you to create mobile apps quickly. 
  • 18. Links • ASP.NET MVC - http://www.asp.net/ • jQuery - http://jquery.com/ • jQuery Mobile - http://jquerymobile.com/ • Underscore - http://documentcloud.github.com/underscore Backbone - http://documentcloud.github.com/backbone • JSLint - http://jslint.com/ • Opera - http://www.opera.com/developer/tools/mobile/ • Adobe Shadow - http://labs.adobe.com/technologies/shadow/
  • 19. Books jQuery Mobile Jon Reid Sebastopol, CA: O’Reilly Media Inc., 2011 Master Mobile Web Apps with jQuery Mobile 2nd ed. Matt Doyle Brighton, UK: Elated Communications Ltd, 2011
  • 20. Please Rate My Talk: SpeakerRate - http://spkr8.com/t/11621 The Source Code is on GitHub at: https://github.com/Rockncoder/JQMContacts

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. This field is changing fast. New tools are constantly introduced and old ones updated. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. Best possible User Experience (speed is the best feature)\n Quick and responsive\n “How many people here have ever clicked on a button and waited seconds for something to happen?”\n No need to wait for a server response\n Minimal data transfer - Chunky vs. Chatty\n multiple pages - in one HTML page\n no need for extra header info\n 3G data transfers\n Lower Server utilization\n Keep Your Server Dumb\n Filter data early, preferably in DB call\n Don’t render on the server, render on the client\n Easier Maintenance\n Using a framework gives engineers a clue as to where to find things and how to add new things.\n\n
  14. Chrome Browser (other webkit browser, or Firebug)\n console.log\n setting breakpoints\n debugger\n see network performance, including total amount of data transfer\n JS console allows drilling into JS objects\n see CSS hierarchy of HTML objects\n Fiddler2\n captures and replays web session\n allows simulation of modem speed\n can make direct calls to web services\n Opera Mobile Emulator\n for all webkit based browser\n allows markup visualization and manipulation\n allows you to see the console output\n\n
  15. Browser MadnessMobile browsers just like their desktop cousins have differences in their implementations. Even versions on the same OS can have differences. This is especially true on Android platforms.\n Use an AnalogChrome for Android, Safari for iOS, and IE for Windows Phone 7\n Use Unique Ids on MarkupUse unique id on all HTML tags through out your application since JQuery loads HTML dynamically. Failure to do this can lead to subtle errors which are extremely difficult to find. This is especially true when dynamically loading pages.\n Reference the active pageBecause JQM manipulates the DOM dynamically, depending on what your code is doing, it is possible for multiple copies of the markup to be in the DOM at the same time. Therefore, use the global, $.mobile.activePage, in your selector queries when referencing a page.\n Use the pageinit event not $(document).ready()\n Avoid Sloppy JavaScriptJavaScript is a harsh mistress. Often when you do something wrong, it will say nothing. Be sure to write JS as cleanly as possible and use tools like JSLint to check for errors.\n Always Test on a Device‘Nuff said\n\n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n