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
840
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
2.1k
Beyond Testing Михаил Боднарчук
fwdays
0
810
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.9k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
1k
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.8k
Phalcon. Что нового? Александр Торош
fwdays
0
1.2k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.4k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
810
Функциональный тулчейн Nix
fwdays
1
480
Other Decks in Programming
See All in Programming
CSC307 Lecture 09
javiergs
PRO
1
810
Patterns of Patterns
denyspoltorak
0
1.3k
Grafana:建立系統全知視角的捷徑
blueswen
0
320
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
580
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
180
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
190
CSC307 Lecture 08
javiergs
PRO
0
650
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
150
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
220
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
440
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
180
Fluid Templating in TYPO3 14
s2b
0
120
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
From π to Pie charts
rasagy
0
120
How to make the Groovebox
asonas
2
1.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Leo the Paperboy
mayatellez
4
1.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
270
Large-scale JavaScript Application Architecture
addyosmani
515
110k
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