Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Native look and feel of mobile JS interfaces wi...
Search
fwdays
March 05, 2013
Programming
1
800
Native look and feel of mobile JS interfaces with HTML5 canvas
fwdays
March 05, 2013
Tweet
Share
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2k
Beyond Testing Михаил Боднарчук
fwdays
0
730
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.8k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
920
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.8k
Phalcon. Что нового? Александр Торош
fwdays
0
1.1k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.3k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
730
Функциональный тулчейн Nix
fwdays
1
440
Other Decks in Programming
See All in Programming
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
5
3.8k
Linux && Docker 研修/Linux && Docker training
forrep
23
4.5k
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
770
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
100
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
230
【PHP】破壊的バージョンアップと戦った話〜決断と説得
satoshi256kbyte
0
120
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
130
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
360
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
120
CI改善もDatadogとともに
taumu
0
110
Lottieアニメーションをカスタマイズしてみた
tahia910
0
120
Software Architecture
hschwentner
6
2.1k
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
8
270
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Unsuck your backbone
ammeep
669
57k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
540
How GitHub (no longer) Works
holman
313
140k
Facilitating Awesome Meetings
lara
51
6.2k
The Cult of Friendly URLs
andyhume
78
6.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
GraphQLとの向き合い方2022年版
quramy
44
13k
Transcript
More native look and feel with HTML5 canvas Cases, advantages,
issues and solutions
How to compare DOM and CANVAS? We will use FlashJS
engine. It have CANVAS and DOM renderers, so we can launch same code in both ways. flashjs.com
Why?
Why not HTML? HTML Node - is heavy to render
object. • Designed for advanced layouts, sometimes it is useless and harmful • CSS • Legacy properties, logic
Why canvas? One DOM interface - unlimited number of objects,
so much more easier to render.
Why canvas? Using canvas for UI components rendering is very
close to event delegation - you delegate not only events but rendering as well.
Cases
Typical cases Responsible components with transformation of many objects. DOM
example CANVAS example
Typical cases DOM interface decoration with animated objects. DOM example
CANVAS example
Typical cases For example - you`ll need to draw timelines
like this with DOM. How many DIVs will you need?
Your case ?
Anti-cases
Anticases Small amount of objects without transforms or transitions /
animations are enought.
Anticases Your objects have to include content with advanced layout.
And much more... CANVAS is not a silver bullet for
HTML perfomance...
Big canvas - bad canvas?
Frameworks Probably you`ll need easy to use interfaces for sprites,
animations, scales, nested objects and much more, but HTML5 canvas API is too low level thing - you`d better to use frameworks.
Canvas UI development issues Because of previous issue - you`ll
need batch assets resizing for different screen sizes.
Canvas UI development issues Using large universal engines seems to
be wrong way sometimes. There is space for your own wheel.
Questions ?
Thanks =) Denis Radin PixelsCommander.com Special thanks to FlashJS engine
- www.flashjs.com