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
jquery mobile
Search
Andreas Bjärlestam
May 25, 2011
Technology
77
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
jquery mobile
Andreas Bjärlestam
May 25, 2011
More Decks by Andreas Bjärlestam
See All by Andreas Bjärlestam
Climate compensate with a pull request
bjarlestam
0
62
Agile performance testing
bjarlestam
0
120
SPDY and HTTP2
bjarlestam
1
1.4k
SPDY or maybe HTTP2.0
bjarlestam
4
71
Devise - taking care of your users
bjarlestam
0
80
REST with JAX-RS
bjarlestam
1
98
REST
bjarlestam
2
180
Other Decks in Technology
See All in Technology
会社説明資料
persolserverworks
0
9.8k
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
170
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
4.9k
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
290
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
Local CI × GitHub Actions
gogutan
2
190
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
380
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
130
Kiro Crewをはじめよう
kizawa2020
1
160
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.3k
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
200
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Odyssey Design
rkendrick25
PRO
2
870
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
410
Music & Morning Musume
bryan
48
7.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
600
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
Transcript
Andreas Bjärlestam! 2011-05-25!
Web vs Apps • Referral traffic is lost with
Apps • Google does not index Apps • Customers are already going to the website • Cross device • Apps are in the hands of pla>orm vendors
Frameworks Frameworks Frameworks
For building mobile applicaAons with web technology For
building mobile friendly websites
Features • HTML5 based • Progressive enhancement
– Works in less capable browsers but with limited features • Accessibility – Designed to work with screen readers – WAI-‐ARIA
jQuery means JavaScript right?
Well… not in this case jQuery-‐mobile development is mostly
about markup
Pages
None
Simple page example <div data-role="page" id="home"> <div data-role="header"> <h1>Page
header</h1> </div> <div data-role="content"> <h3>Hi!</h3> <p>This is a simple page made with jquery mobile</p> </div> <div data-role="footer"> <h4>Page Footer</h4> </div> </div>
Page navigaAon
UI elements List views BuSons Dialogs
Popup menus Sliders Checkboxes
<form action="form.php" method="post"> <label for="slider">Slider: </label> <input type="number" data-type="range” name="slider"
id="slider" min="40" max="80" value="50"/> <label for="q">Search: </label> <input data-type="search" name="q" id="q"/> <fieldset data-role="controlgroup"> <legend>Choose many:</legend> <input type="checkbox" name="checkbox-1" id="checkbox-1" /> <label for="checkbox-1">Option 1</label> <input type="checkbox" name="checkbox-2" id="checkbox-2" /> <label for="checkbox-2">Option 2</label> <input type="checkbox" name="checkbox-3" id="checkbox-3" /> <label for="checkbox-3">Option 3</label> </fieldset> <label for=”switch">Flip switch:</label> <select name=”switch" id=”switch" data-role="slider"> <option value="off">Off</option> <option value="on">On</option> </select> </form>
Page transiAons Slide Flip Pop Fade
Slide up Slide down
How are these nice effects done?
CSS transforms • GPU accelerated • Compact code
= efficient • Currently only implemented for webkit
.flip { -webkit-animation-name: flipinfromleft; -webkit-animation-timing-function: ease-in-out; -webkit-animation-duration: 2s; } @-webkit-keyframes
flipinfromleft { from { -webkit-transform: rotateY(180deg); } to { -webkit-transform: rotateY(0); } }
How can we handle all these phones?
Progressive Enhancement
None
Performance in the mobile environment
Bandwidth vs Latency
Bandwidth Latency source: hSp://www.belshe.com/2010/05/24/more-‐bandwidth-‐doesnt-‐maSer-‐much/
Latency is bad for wireless
Reduce roundtrips to fight latency
How does jQuery Mobile handle this?
How jQuery fights Latency • Gradients and shadows with
CSS3 – No background-‐images to load • Image icons in css-‐sprite • And…
Remember WAP and WML? The Card Deck
jQuery mobile supports mulAple pages in a single html
document
JavaScript Event-‐listeners tap taphold swipe swipelea
swiperight orientaAonchange scrollstart scrollstop
Events -‐ examples $('#tapMe').tap(function(e) { alert('tap!' ); }); $('#home').swipeleft(function(e)
{ alert('swipe left!' ); });
Theming • Object oriented CSS • Similar to
jQuery-‐UI • CSS3 to minify footprint – Rounded corners – Shadows – Gradients • Color “swatches” – A theme includes several color schemes that can be applied on different content
data-‐theme=“b” data-‐theme=“a” data-‐theme=“e”
Andreas Bjärlestam mailto:
[email protected]
hSp://twiSer.com/bjarlestam
ASribuAon • hSp://www.flickr.com/photos/brdavids/2699221787 • hSp://www.slideshare.net/bryanrieger/rethinking-‐the-‐mobile-‐web-‐by-‐yiibu • hSp://www.belshe.com/2010/05/24/more-‐bandwidth-‐doesnt-‐maSer-‐much