Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Html5 Mobile Apps: Tips & Tricks
Search
Elijah Glover
March 28, 2013
Programming
620
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Html5 Mobile Apps: Tips & Tricks
Elijah Glover
March 28, 2013
Other Decks in Programming
See All in Programming
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
AI × TiDD / 2026.09.05 Redmine 大阪
tokudiro
1
110
高専キャリア LT 発表内容
crysta1221
6
5.6k
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
120
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
55
36k
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.4k
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
900
Press start. Python's next generation.
willingc
PRO
3
320
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
130
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
490
Featured
See All Featured
KATA
mclloyd
PRO
35
15k
It's Worth the Effort
3n
188
29k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Automating Front-end Workflow
addyosmani
1369
210k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
710
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The Pragmatic Product Professional
lauravandoore
37
7.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Transcript
HTML5 MOBILE APPS Tips & Tricks Elijah Glover
[email protected]
@elijahglover
What We Are Building HTML5 Mobile app used by ~
3.5m iPhone, Android, Blackberry & Windows Phone No Mobile Frameworks - ie. jQuery Mobile
HOW MODERN ARE PHONE BROWSERS? iOS 4, Android 2.2 runs
the equivalent webkit version of Google Chrome 5 (Q2 2010) iOS 6, Android 4.2 runs the equivalent webkit version of Google Chrome 26 (Q1 2013 ~ Current) Most mobile browsers are based off the webkit project
FRAMEWORKS knockout.js MVVM Framework require.js AMD Loader, IoC/DI sammy.js Routing
Framework modernizr Browser Feature Detection
SINGLE PAGE APPS (SPA)
UNDER THE HOOD define("vm/login", ! ["ko", "jQuery"], ! function(ko, $)
{ ! ! var self = this; ! ! self.userName = ko.observable(); ! ! self.password = ko.observable(); ! ! ko.applyBindings(self, $("#login")[0]); ! ! return self; ! })); var app = Sammy('#app', function() { ! this.get('#/login', function() { ! ! require(["vm/login"], function(viewModel) { ! ! ! $("#login").show(); ! ! }); ! }); }); app.run('#/login');
//Use Modernizr To Detect Prefixed Event Name var animationEndName =
(Modernizr.prefixed('animation') + "End") .replace(/^ms/, "MS") .replace(/^Webkit/, "webkit") .replace(/^Moz.*/, "animationend"); //Bind Once & Wait For AnimationEnd To Be Called $("#view1").one(animationEndName, function() { ! //Animation Complete }).addClass("view-transition"); ANIMATION & TRANSITIONS iOS 3.2+ Android 2.1+ Blackberry 6.0+ Windows Phone 8+ Native CSS3 Support
ANIMATION & TRANSITIONS Windows Phone 7 //Detect Support For CSS3
Animations if (!Modernizr.cssanimations) { ! $("#view1").animate({ left: 200 }, { ! ! complete: function() { ! ! ! //Animation Complete ! ! } ! }); } DOM Animation via jQuery
VIEWPORT <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=yes" /> The viewport
you specify is important! It tells the browser how to render your page Android ignores CSS3 properties when user-scalable is set to yes.
CSS GOTCHA’S position: fixed; iOS 5+, Android 2.2+, BlackBerry 7+,
Windows Phone 8 overflow: scroll; iOS 5+, Android 2.2+, BlackBerry 7+, Windows Phone 8 overflow-x: scroll; -webkit-overflow-scrolling: touch; //Adds Smooth Scrolling overthrow.js - http://filamentgroup.github.com/Overthrow/ iOS4, Android 2.1, Blackberry 6
EMULATORS & SIMULATORS TOOLKIT Xcode iOS Simulator (OSX) Android SDK
Emulator (Windows, OSX, Linux) Windows Phone Emulator (Windows) Blackberry Simulator (Windows)
WEb INspector REmote WEINRE “winery” <script src="http://localhost:8080/target/target-script-min.js"></script>
HTML5 Feature Matrix http://mobilehtml5.org/ Mobile Emulators & Simulators: The Ultimate
Guide http://www.mobilexweb.com/emulators