SlideShare a Scribd company logo
HTML5
Web       API


                @
html5-developers-jp Google


                        Web


Google       API Expert HTML5

2007     Gears

          Gears
HTML5

  HTML5 - HTML      XHTML       API




Open Web Platform         API



Open Web       Web

                     ×4 and,
HTML5                       (1)

                 HTML

                API

8/25

       10


         2022           w
HTML5                             (2)


                            Web
        API

  HTML5 - A vocabulary and associated APIs for
  HTML and XHTML
  Web Storage, Web Database, Web Workers...
Gears      API
HTML5 - A vocabulary and associated APIs for HTML and
XHTML


       HTML5



          HTML5




          Canvas



                       API
HTML5 - HTML5


            .html .htm

          Content-Type text/html


     DOCTYPE
<!DOCTYPE html>
<html>
 <body>
 ...
 </body>
</html>
HTML5                     - HTML5




        article, aside, footer, header, hgroup, nav, section



        figure, source, video, audio, canvas, embed
               Web

        keygen, output, input                type



        progress, meter, command, details



        mark, ruby, rt, rp, time
HTML5



   section   HTML
     CSS            section    div

   article
                              <atom:entry> aside

   aside

   nav
body, td        HTML5




     h1-h6

     hgroup

header,footer
<!DOCTYPE html>
<html>
  <head><meta charset=”UTF-8”></head>
  <body>
    <header>
       <nav><li>a</li><li>b</li></nav>
    </header>
    <section id=”main”>
       <h1>                      </h1>
      <article>
        <h1>          </h1>
      </article>
    </section>
    <footer>Copyright(c)...</footer>
  </body>
</html>
<!DOCTYPE html>
<html>
  <head><meta charset=”UTF-8”></head>
  <body>
    <header>
       <nav><li>a</li><li>b</li></nav>
    </header>
    <section id=”main”>
       <h1>                      </h1>
      <article>
        <h1>          </h1>
      </article>
    </section>
    <footer>Copyright(c)...</footer>
  </body>
</html>
<!DOCTYPE html>
<html>
  <head><meta charset=”UTF-8”></head>
  <body>
    <header>
       <nav><li>a</li><li>b</li></nav>
    </header>
    <section id=”main”>
       <h1>                      </h1>
      <article>
        <h1>          </h1>
      </article>
    </section>
    <footer>Copyright(c)...</footer>
  </body>
</html>
<!DOCTYPE html>
<html>
  <head><meta charset=”UTF-8”></head>
  <body>
    <header>
       <nav><li>a</li><li>b</li></nav>
    </header>
    <section id=”main”>
       <h1>                      </h1>
      <article>
        <h1>          </h1>
      </article>
    </section>
    <footer>Copyright(c)...</footer>
  </body>
</html>
<!DOCTYPE html>
<html>
  <head><meta charset=”UTF-8”></head>
  <body>
    <header>
       <nav><li>a</li><li>b</li></nav>
    </header>
    <section id=”main”>
       <h1>                      </h1>
      <article>
        <h1>          </h1>
      </article>
    </section>
    <footer>Copyright(c)...</footer>
  </body>
</html>
-




    h1-h6



    h1-h6



    section/article/nav/aside
-


<body>
  <h1>body                          </h1>
 <p>           1       </p>
 <h2>h2                                 </h2>
 <p>           2       </p>
</body>




<body>
  <h1>body                          </h1>
  <p>          1       </p>
  <section>
    <h2>section                             </h2>
    <p>            2     </p>
  </section>
</body>
Canvas




         Canvas
Canvas


    Canvas                      <canvas>

    Canvas                      canvas
    (canvas.getContext(“2d”))

<canvas id=”canvas1” width=”200” height=”100”>

var canvas1 = document.getElementById(“canvas1”);
var ctx = canvas1.getContext(“2d”);

ctx.drawImage(image, 0, 0);
...
    3d

                     O3D (Google), Canvas3D (Mozilla), Opera 3D

                                Web GL OpenGL ES2.0 JavaScript
<video>

<audio>

<source>



<video><audio>


JavaScript



             Google On2 Technology
<video id=”video1” width=”300” src=”video.ogv”>

</video>

//      JavaScript
var video1 = document.getElementById(“video1”);
video1.play();
video1.stop();
video1.addEventListener(
    “onloadstart”, function(){}, false);
WebForms2.0

                      input    type

    tel

    search

    url         URL

    email

    datetime, datetime-local

    date

    (       )
input   type

month

week

time

number

range

color

         Opera
required

pattern

type                             email, url

form      submit

form.checkValidity()



                   placeholder
API




&   API

    draggable

    dragstart                                             DataTransfer



    dropover                     event.preventDefault()



    drop                     DataTransfer
           event.stopPropagation()
API


<div id=”dragSrc” draggable>        </div>
<div id=”dragDest”>        </div>

dragSrc.addEventListener(“dragStart”, function(e) {
  var dt = e.dataTransfer;
  dt.setData(“text/plain”, “Hello”);
  return true;
});

dragDest.addEventListener(“dragOver”, function(e) {
  e.preventDefault();
  return false;
});

dragDest.addEventListener(“drop”, function(e) {
  var text = e.dataTransfer.getData(“text/plain”);
  e.stopPropagation();
  ...
  return false;
});
DOM            API

     Element.classList        className

     Document.getElementByClassName()

designMode execCommand()                         WYSIWYG



Microdata

            role, aria-, contextmenu, hidden, data-*, contentEditable.....

... more and more
Open Web Platform   API




   Web Workers

   Web Storage

   Web Database

   Web Sockets
Web




                                                  Content-Type: text/
cache-manifest

Web          html        manifest
      URL                 : <html manifest=”hello.manifest”>

                 JavaScript
-




                 UTF-8

     1



CACHE MANIFEST

# version: 200909241054

hello.html
hello.js
document




           window.postMessage(message, targetOrigin)

           onmessage

    :
var iframe = ...
iframe.contentWindow.postMessage(“Hello”, “http://destdomain.com”);

     :
onmessage = function(event) {
  if (event.origin == “http://srcdomain.com”) {
    var message = event.data;
    ...
  }
}
Web Workers


                                                               UI

             : new Worker(scriptUrl)




                                       : worker.postMessage(message);

                                       : worker.onmessage(event);

                   postMessage    onmessage



                                  SharedWorker
               ui.js                                                worker.js
worker.onmessage =                              onmessage = function(msg) {
function(msg) {                                   ...
  ...                                             postMessage(...)
}                                               }
function a {
  worker.postMessage(...)
Web Database


                                   SQL

          API         API

                API



             API

  var db = openDatabase(...)
  db.transaction(function(tx) {
   tx.executeSql(
    “INSERT INTO Customer (NAME, AGE) “ +
    “VALUES(?,?)”, [“Shiraishi”, 31],
   function onSuccess(tx, rs) {
    ...                 ...
   },
   function onError(tx, error) {
Web Storage




         LocalStorage

         SessionStorage


    localStorage.setItem(“key”, “value”);

    var val = localStorage.getItem(“key”);
    //
    localStorage.key =“value”;

    var val = localStorage.key;
Web Sockets


      HTTP                          API



             80(ws), 443(wss)     HTTP/HTTPS

    new WebSocket(url)                 postMessage()   onmessage()



       var ws = new WebSocket(“ws://example.com”);
       ws.onmessage = function(message) {
         ...
       }

       ws.postMessage(“Hello”);
HTML                             Web

HTML5     API



            Web

    Canvas SVG                   UI




    ...



                  Let’s HTML5!
Html5 For Jjugccc2009fall

More Related Content

What's hot

Google
GoogleGoogle
Googlesoon
 
Authentication
AuthenticationAuthentication
Authenticationsoon
 
The Big Picture and How to Get Started
The Big Picture and How to Get StartedThe Big Picture and How to Get Started
The Big Picture and How to Get Started
guest1af57e
 
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
mfrancis
 
Micro app-framework
Micro app-frameworkMicro app-framework
Micro app-framework
Michael Dawson
 
Frameworkless Web Development in Clojure
Frameworkless Web Development in ClojureFrameworkless Web Development in Clojure
Frameworkless Web Development in Clojure
Kungi2342
 
GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4
Heather Rock
 
Introduction to web components
Introduction to web componentsIntroduction to web components
Introduction to web components
Marc Bächinger
 
High-Quality JavaScript
High-Quality JavaScriptHigh-Quality JavaScript
High-Quality JavaScript
Marc Bächinger
 
Simplify AJAX using jQuery
Simplify AJAX using jQuerySimplify AJAX using jQuery
Simplify AJAX using jQuerySiva Arunachalam
 
Deploying
DeployingDeploying
Deployingsoon
 
Progressive What Apps?
Progressive What Apps?Progressive What Apps?
Progressive What Apps?
Patrick Kettner
 
JavaScript APIs - The Web is the Platform - .toster conference, Moscow
JavaScript APIs - The Web is the Platform - .toster conference, MoscowJavaScript APIs - The Web is the Platform - .toster conference, Moscow
JavaScript APIs - The Web is the Platform - .toster conference, MoscowRobert Nyman
 
Bootstrap과 UI-Bootstrap
Bootstrap과 UI-BootstrapBootstrap과 UI-Bootstrap
Bootstrap과 UI-Bootstrap
WebFrameworks
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVC
pootsbook
 
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Jeado Ko
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
Laurence Svekis ✔
 
The Ring programming language version 1.5.2 book - Part 42 of 181
The Ring programming language version 1.5.2 book - Part 42 of 181The Ring programming language version 1.5.2 book - Part 42 of 181
The Ring programming language version 1.5.2 book - Part 42 of 181
Mahmoud Samir Fayed
 

What's hot (19)

Google
GoogleGoogle
Google
 
Authentication
AuthenticationAuthentication
Authentication
 
The Big Picture and How to Get Started
The Big Picture and How to Get StartedThe Big Picture and How to Get Started
The Big Picture and How to Get Started
 
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
OSGi and Spring Data for simple (Web) Application Development - Christian Bar...
 
Micro app-framework
Micro app-frameworkMicro app-framework
Micro app-framework
 
Frameworkless Web Development in Clojure
Frameworkless Web Development in ClojureFrameworkless Web Development in Clojure
Frameworkless Web Development in Clojure
 
GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4
 
Introduction to web components
Introduction to web componentsIntroduction to web components
Introduction to web components
 
High-Quality JavaScript
High-Quality JavaScriptHigh-Quality JavaScript
High-Quality JavaScript
 
Simplify AJAX using jQuery
Simplify AJAX using jQuerySimplify AJAX using jQuery
Simplify AJAX using jQuery
 
Deploying
DeployingDeploying
Deploying
 
jQuery Introduction
jQuery IntroductionjQuery Introduction
jQuery Introduction
 
Progressive What Apps?
Progressive What Apps?Progressive What Apps?
Progressive What Apps?
 
JavaScript APIs - The Web is the Platform - .toster conference, Moscow
JavaScript APIs - The Web is the Platform - .toster conference, MoscowJavaScript APIs - The Web is the Platform - .toster conference, Moscow
JavaScript APIs - The Web is the Platform - .toster conference, Moscow
 
Bootstrap과 UI-Bootstrap
Bootstrap과 UI-BootstrapBootstrap과 UI-Bootstrap
Bootstrap과 UI-Bootstrap
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVC
 
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
 
The Ring programming language version 1.5.2 book - Part 42 of 181
The Ring programming language version 1.5.2 book - Part 42 of 181The Ring programming language version 1.5.2 book - Part 42 of 181
The Ring programming language version 1.5.2 book - Part 42 of 181
 

Similar to Html5 For Jjugccc2009fall

Paris js extensions
Paris js extensionsParis js extensions
Paris js extensions
erwanl
 
Play!ng with scala
Play!ng with scalaPlay!ng with scala
Play!ng with scala
Siarzh Miadzvedzeu
 
Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~
Sho Ito
 
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....HTML5 (and friends) - History, overview and current status - jsDay Verona 11....
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....Patrick Lauke
 
Brave new world of HTML5
Brave new world of HTML5Brave new world of HTML5
Brave new world of HTML5
Chris Mills
 
webinale2011_Chris Mills_Brave new world of HTML5Html5
webinale2011_Chris Mills_Brave new world of HTML5Html5webinale2011_Chris Mills_Brave new world of HTML5Html5
webinale2011_Chris Mills_Brave new world of HTML5Html5smueller_sandsmedia
 
Introduccion a HTML5
Introduccion a HTML5Introduccion a HTML5
Introduccion a HTML5
Pablo Garaizar
 
html5
html5html5
HTML 5 - Overview
HTML 5 - OverviewHTML 5 - Overview
HTML 5 - Overview
Marcelio Leal
 
Pracitcal AJAX
Pracitcal AJAXPracitcal AJAX
Pracitcal AJAX
jherr
 
5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)
Christian Rokitta
 
e-suap - client technologies- english version
e-suap - client technologies- english versione-suap - client technologies- english version
e-suap - client technologies- english version
Sabino Labarile
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWAREFIWARE
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
Pablo Garaizar
 
jQuery
jQueryjQuery
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web ToolkitJava Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
IMC Institute
 
Create a mobile web app with Sencha Touch
Create a mobile web app with Sencha TouchCreate a mobile web app with Sencha Touch
Create a mobile web app with Sencha TouchJames Pearce
 
Scala based Lift Framework
Scala based Lift FrameworkScala based Lift Framework
Scala based Lift Frameworkvhazrati
 
Overview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web FrameworkOverview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web Framework
IndicThreads
 

Similar to Html5 For Jjugccc2009fall (20)

Paris js extensions
Paris js extensionsParis js extensions
Paris js extensions
 
Play!ng with scala
Play!ng with scalaPlay!ng with scala
Play!ng with scala
 
Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~
 
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....HTML5 (and friends) - History, overview and current status - jsDay Verona 11....
HTML5 (and friends) - History, overview and current status - jsDay Verona 11....
 
Brave new world of HTML5
Brave new world of HTML5Brave new world of HTML5
Brave new world of HTML5
 
webinale2011_Chris Mills_Brave new world of HTML5Html5
webinale2011_Chris Mills_Brave new world of HTML5Html5webinale2011_Chris Mills_Brave new world of HTML5Html5
webinale2011_Chris Mills_Brave new world of HTML5Html5
 
Introduccion a HTML5
Introduccion a HTML5Introduccion a HTML5
Introduccion a HTML5
 
html5
html5html5
html5
 
HTML 5 - Overview
HTML 5 - OverviewHTML 5 - Overview
HTML 5 - Overview
 
HTML5
HTML5HTML5
HTML5
 
Pracitcal AJAX
Pracitcal AJAXPracitcal AJAX
Pracitcal AJAX
 
5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)
 
e-suap - client technologies- english version
e-suap - client technologies- english versione-suap - client technologies- english version
e-suap - client technologies- english version
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
 
jQuery
jQueryjQuery
jQuery
 
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web ToolkitJava Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
 
Create a mobile web app with Sencha Touch
Create a mobile web app with Sencha TouchCreate a mobile web app with Sencha Touch
Create a mobile web app with Sencha Touch
 
Scala based Lift Framework
Scala based Lift FrameworkScala based Lift Framework
Scala based Lift Framework
 
Overview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web FrameworkOverview of The Scala Based Lift Web Framework
Overview of The Scala Based Lift Web Framework
 

More from Shumpei Shiraishi

俺的GEB概論(前半)
俺的GEB概論(前半)俺的GEB概論(前半)
俺的GEB概論(前半)
Shumpei Shiraishi
 
コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術
Shumpei Shiraishi
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
Shumpei Shiraishi
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
Shumpei Shiraishi
 
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門
Shumpei Shiraishi
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
Shumpei Shiraishi
 
Angular2実践入門
Angular2実践入門Angular2実践入門
Angular2実践入門
Shumpei Shiraishi
 
WebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探るWebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探る
Shumpei Shiraishi
 
変身×フランツ・カフカ
変身×フランツ・カフカ変身×フランツ・カフカ
変身×フランツ・カフカ
Shumpei Shiraishi
 
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んでイラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
Shumpei Shiraishi
 
「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで
Shumpei Shiraishi
 
HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門
Shumpei Shiraishi
 
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
Shumpei Shiraishi
 
はじめにことばありき
はじめにことばありきはじめにことばありき
はじめにことばありき
Shumpei Shiraishi
 
HTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトHTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトShumpei Shiraishi
 
この人と結婚していいの?を読んで
この人と結婚していいの?を読んでこの人と結婚していいの?を読んで
この人と結婚していいの?を読んでShumpei Shiraishi
 

More from Shumpei Shiraishi (20)

俺的GEB概論(前半)
俺的GEB概論(前半)俺的GEB概論(前半)
俺的GEB概論(前半)
 
コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術コンセプトのつくりかた - アイデアをかたちにする技術
コンセプトのつくりかた - アイデアをかたちにする技術
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
 
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
 
JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門JavaScript使いのためのTypeScript実践入門
JavaScript使いのためのTypeScript実践入門
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
 
「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで「それでも人生にイエスと言う」を読んで
「それでも人生にイエスと言う」を読んで
 
Angular2実践入門
Angular2実践入門Angular2実践入門
Angular2実践入門
 
WebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探るWebRTCがビデオ会議市場に与えるインパクトを探る
WebRTCがビデオ会議市場に与えるインパクトを探る
 
変身×フランツ・カフカ
変身×フランツ・カフカ変身×フランツ・カフカ
変身×フランツ・カフカ
 
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んでイラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
イラスト日用服飾辞典/三面記事の歴史/健康男 を読んで
 
「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで「1秒でわかる!アパレル業界ハンドブック」を読んで
「1秒でわかる!アパレル業界ハンドブック」を読んで
 
漫☆画太郎論
漫☆画太郎論漫☆画太郎論
漫☆画太郎論
 
HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門HTML5時代のフロントエンド開発入門
HTML5時代のフロントエンド開発入門
 
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
6,000人のWeb技術者コミュニティを5年間やってみて学んだこと
 
はじめにことばありき
はじめにことばありきはじめにことばありき
はじめにことばありき
 
秒速一億円
秒速一億円秒速一億円
秒速一億円
 
HTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクトHTML5がもたらすアプリ開発へのインパクト
HTML5がもたらすアプリ開発へのインパクト
 
この人と結婚していいの?を読んで
この人と結婚していいの?を読んでこの人と結婚していいの?を読んで
この人と結婚していいの?を読んで
 
20130921レジュメ2
20130921レジュメ220130921レジュメ2
20130921レジュメ2
 

Recently uploaded

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 

Recently uploaded (20)

The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 

Html5 For Jjugccc2009fall

  • 1. HTML5 Web API @
  • 2. html5-developers-jp Google Web Google API Expert HTML5 2007 Gears Gears
  • 3. HTML5 HTML5 - HTML XHTML API Open Web Platform API Open Web Web ×4 and,
  • 4. HTML5 (1) HTML API 8/25 10 2022 w
  • 5. HTML5 (2) Web API HTML5 - A vocabulary and associated APIs for HTML and XHTML Web Storage, Web Database, Web Workers... Gears API
  • 6. HTML5 - A vocabulary and associated APIs for HTML and XHTML HTML5 HTML5 Canvas API
  • 7. HTML5 - HTML5 .html .htm Content-Type text/html DOCTYPE <!DOCTYPE html> <html> <body> ... </body> </html>
  • 8. HTML5 - HTML5 article, aside, footer, header, hgroup, nav, section figure, source, video, audio, canvas, embed Web keygen, output, input type progress, meter, command, details mark, ruby, rt, rp, time
  • 9. HTML5 section HTML CSS section div article <atom:entry> aside aside nav
  • 10. body, td HTML5 h1-h6 hgroup header,footer
  • 11. <!DOCTYPE html> <html> <head><meta charset=”UTF-8”></head> <body> <header> <nav><li>a</li><li>b</li></nav> </header> <section id=”main”> <h1> </h1> <article> <h1> </h1> </article> </section> <footer>Copyright(c)...</footer> </body> </html>
  • 12. <!DOCTYPE html> <html> <head><meta charset=”UTF-8”></head> <body> <header> <nav><li>a</li><li>b</li></nav> </header> <section id=”main”> <h1> </h1> <article> <h1> </h1> </article> </section> <footer>Copyright(c)...</footer> </body> </html>
  • 13. <!DOCTYPE html> <html> <head><meta charset=”UTF-8”></head> <body> <header> <nav><li>a</li><li>b</li></nav> </header> <section id=”main”> <h1> </h1> <article> <h1> </h1> </article> </section> <footer>Copyright(c)...</footer> </body> </html>
  • 14. <!DOCTYPE html> <html> <head><meta charset=”UTF-8”></head> <body> <header> <nav><li>a</li><li>b</li></nav> </header> <section id=”main”> <h1> </h1> <article> <h1> </h1> </article> </section> <footer>Copyright(c)...</footer> </body> </html>
  • 15. <!DOCTYPE html> <html> <head><meta charset=”UTF-8”></head> <body> <header> <nav><li>a</li><li>b</li></nav> </header> <section id=”main”> <h1> </h1> <article> <h1> </h1> </article> </section> <footer>Copyright(c)...</footer> </body> </html>
  • 16. - h1-h6 h1-h6 section/article/nav/aside
  • 17. - <body> <h1>body </h1> <p> 1 </p> <h2>h2 </h2> <p> 2 </p> </body> <body> <h1>body </h1> <p> 1 </p> <section> <h2>section </h2> <p> 2 </p> </section> </body>
  • 18. Canvas Canvas
  • 19. Canvas Canvas <canvas> Canvas canvas (canvas.getContext(“2d”)) <canvas id=”canvas1” width=”200” height=”100”> var canvas1 = document.getElementById(“canvas1”); var ctx = canvas1.getContext(“2d”); ctx.drawImage(image, 0, 0); ... 3d O3D (Google), Canvas3D (Mozilla), Opera 3D Web GL OpenGL ES2.0 JavaScript
  • 21. <video id=”video1” width=”300” src=”video.ogv”> </video> // JavaScript var video1 = document.getElementById(“video1”); video1.play(); video1.stop(); video1.addEventListener( “onloadstart”, function(){}, false);
  • 22. WebForms2.0 input type tel search url URL email datetime, datetime-local date ( )
  • 23. input type month week time number range color Opera
  • 24. required pattern type email, url form submit form.checkValidity() placeholder
  • 25. API & API draggable dragstart DataTransfer dropover event.preventDefault() drop DataTransfer event.stopPropagation()
  • 26. API <div id=”dragSrc” draggable> </div> <div id=”dragDest”> </div> dragSrc.addEventListener(“dragStart”, function(e) { var dt = e.dataTransfer; dt.setData(“text/plain”, “Hello”); return true; }); dragDest.addEventListener(“dragOver”, function(e) { e.preventDefault(); return false; }); dragDest.addEventListener(“drop”, function(e) { var text = e.dataTransfer.getData(“text/plain”); e.stopPropagation(); ... return false; });
  • 27. DOM API Element.classList className Document.getElementByClassName() designMode execCommand() WYSIWYG Microdata role, aria-, contextmenu, hidden, data-*, contentEditable..... ... more and more
  • 28. Open Web Platform API Web Workers Web Storage Web Database Web Sockets
  • 29. Web Content-Type: text/ cache-manifest Web html manifest URL : <html manifest=”hello.manifest”> JavaScript
  • 30. - UTF-8 1 CACHE MANIFEST # version: 200909241054 hello.html hello.js
  • 31. document window.postMessage(message, targetOrigin) onmessage : var iframe = ... iframe.contentWindow.postMessage(“Hello”, “http://destdomain.com”); : onmessage = function(event) { if (event.origin == “http://srcdomain.com”) { var message = event.data; ... } }
  • 32. Web Workers UI : new Worker(scriptUrl) : worker.postMessage(message); : worker.onmessage(event); postMessage onmessage SharedWorker ui.js worker.js worker.onmessage = onmessage = function(msg) { function(msg) { ... ... postMessage(...) } } function a { worker.postMessage(...)
  • 33. Web Database SQL API API API API var db = openDatabase(...) db.transaction(function(tx) { tx.executeSql( “INSERT INTO Customer (NAME, AGE) “ + “VALUES(?,?)”, [“Shiraishi”, 31], function onSuccess(tx, rs) { ... ... }, function onError(tx, error) {
  • 34. Web Storage LocalStorage SessionStorage localStorage.setItem(“key”, “value”); var val = localStorage.getItem(“key”); // localStorage.key =“value”; var val = localStorage.key;
  • 35. Web Sockets HTTP API 80(ws), 443(wss) HTTP/HTTPS new WebSocket(url) postMessage() onmessage() var ws = new WebSocket(“ws://example.com”); ws.onmessage = function(message) { ... } ws.postMessage(“Hello”);
  • 36. HTML Web HTML5 API Web Canvas SVG UI ... Let’s HTML5!