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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
fwdays
March 05, 2013
Programming
870
1
Share
Native look and feel of mobile JS interfaces with HTML5 canvas
fwdays
March 05, 2013
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2.1k
Beyond Testing Михаил Боднарчук
fwdays
0
850
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.9k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
1k
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.9k
Phalcon. Что нового? Александр Торош
fwdays
0
1.2k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.5k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
850
Функциональный тулчейн Nix
fwdays
1
500
Other Decks in Programming
See All in Programming
New "Type" system on PicoRuby
pocke
1
360
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
290
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
970
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
220
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
1k
iOS26時代の新規アプリ開発
yuukiw00w
0
210
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
420
誰も頼んでない機能を出荷した話
zekutax
0
150
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
390
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.2k
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.1k
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.7k
Featured
See All Featured
We Are The Robots
honzajavorek
0
230
So, you think you're a good person
axbom
PRO
2
2k
Code Review Best Practice
trishagee
74
20k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Leo the Paperboy
mayatellez
7
1.8k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Ruling the World: When Life Gets Gamed
codingconduct
0
240
Google's AI Overviews - The New Search
badams
0
1k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
290
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
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