38

html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

Embed Size (px)

Citation preview

Page 1: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 2: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

SP-001

Page 3: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

HTML5開発者コミュニティ html5j.org 管理人

株式会社シーエー・モバイル Web先端技術フェロー

Page 4: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 5: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 6: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 7: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

Web Sockets IndexedDBFile API

Page 8: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

<html>

</html>

<html>

</html>

<html>

</html>

Page 9: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 10: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

機能 ローカルコンテキスト Webコンテキスト

Windows Runtime Yes No

Windows Library for JS Yes Yes*

JavaScript URIs No Yes

外部スクリプトの参照 No Yes

window.close Yes No

クロスドメインXHR Yes No

innerHTMLの自由な利用 No Yes

Page 11: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 12: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

<iframe src="http://ds-websocket.qw.to"width=100% height=100%></iframe>

Page 13: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 14: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 15: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 16: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 17: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 18: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 19: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 20: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 21: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

クラス名 機能 クラス名 機能

ListView リストビュー ToggleSwitch トグルスイッチ

AppBar コマンドメニュー ライブタイルスタート画面のタイルをカスタマイズ

Flyout ポップアップ …

Page 22: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

<div data-win-control="WinJS.UI.ListView"data-win-options="{layout: {type: WinJS.UI.GridLayout}}">

</div>

Page 23: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

Promise

var promise = WinJS.xhr({ url: '/data' });promise.then(function(result) {// 正常時の処理

},function(error) {

// エラー時の処理});

Page 24: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 25: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

<div id="tweetTemplate" data-win-control="WinJS.Binding.Template"><div data-win-bind="textContent: text"></div><div data-win-bind="textContent: created_at"></div>

</div>

<div id="tweetList" data-win-control="WinJS.UI.ListView"data-win-options="

{ itemDataSource: global.tweets.dataSource,itemTemplate: select('#tweetTemplate'),layout: {type: WinJS.UI.ListLayout}}">

</div>

Page 26: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

単一ページ・ナビゲーション

default.html

Page 27: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

メソッド/イベントハンドラ 説明

WinJS.Navigation.navigate 履歴スタックに追加

WinJS.Navigation.onnavigated navigateが行われると呼び出されるイベントハンドラ

WinJS.UI.Pages.render ページを読み込んでDOMに追加する

WinJS.UI.Pages.define ページを初期化し、イベントハンドラを関連付ける

Page 28: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 29: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 30: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 31: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 32: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 33: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

#listPage {/* この要素内をグリッド配置する */display: -ms-grid;/* 2行2列のグリッドを定義 */-ms-grid-rows: 126px 1fr;-ms-grid-columns: 40% 1fr;

} 1, 1

Page 34: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた

#listPage > h1 {-ms-grid-row: 1;-ms-grid-column: 1;-ms-grid-row-span: 2;

}#tweetList {-ms-grid-row: 2;-ms-grid-column: 1;

}

<h1>

Page 35: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 36: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 37: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた
Page 38: html5j.orgがHTML5+JavaScriptで Metro Style アプリを作ってみた