html5の前のjavascript入門

61
HTML5 の前の JavaScript 入門 ビーンズ株式会社 豊川

Upload: hiroki-toyokawa

Post on 08-Jul-2015

4.576 views

Category:

Technology


0 download

DESCRIPTION

2012年11月29日(木)に飯田橋にて開催いたしました勉強会の資料になります。

TRANSCRIPT

  • HTML5

    JavaScript

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    HTML5 jQuery Lesson 1 Lesson 2 Web JavaScript & API

    2

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    (24)

    19

    JavaScript

    PHP, Objective-C, C, Python, Ruby,

    ( http://alpacat.com )

    3

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    HTML5

    4

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    HTML5

    footer

    audio, video

    CSS3

    Canvas

    WebGL

    : HTML5

    : CSS3WebGL

    HTML5

    5

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Dev.Opera

    6

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    WebGL Three.js

    7

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    HTML5

    JavaScript

    8

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    HTML5 ...

    9

    footer

    audio, video

    CSS3

    Canvas

    WebGL

    JavaScript !!

    JavaScript !!

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    JavaScript

    10

    iPhone&Android

    &Web

    Web

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    ...

    JavaScript

    11

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery !!

    12

    ...

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery

    13

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery JavaScript

    jQuery11

    JavaScript

    14

    http://www.mwsoft.jp/column/program_top10.htmlTOP10

    JavaScriptIEIE

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery

    15

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    !!

    16

    ...

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Native JavaScript

    17

    var foo = function(){ alert(piyo);};

    var hoge = document.getElementById(hoge);

    // Chrome, Firefoxhoge.addEventListener(click, foo, false);

    // IE, Operahoge.attachEvent(onclick, foo);

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery

    18

    $(#hoge).click(function(){ alert(piyo);});

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    img

    19

    ...

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Native JavaScript

    20

    window.onload = function(){ var element = document.createElement('img');

    element.src = 'img/1.jpg';

    element.style.width = '400px'; element.style.height = '300px';

    var body = document.getElementsByTagName("body").item(0); body.appendChild(element);};

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery

    21

    $(function(){ $('').attr('src', 'img/1.jpg').css({width:'400px', height:'300px'}).appendTo('body');});

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery !!

    22

    http://jquery.com/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Lesson 1

    Lesson 2

    23

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    24

    Mac Windows

    Google Chrome Firefox

    jQuery

    CotEditor

    SakuraEditorTeraPad

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Lesson 1

    25

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 26

    lesson1.htmlimg/1.jpg2.jpgjs/jquery-1.8.1.min.js

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 27

    Lesson 1

    jQuery

    lesson1.html

    HTML5

    jQueryid

    UTF-8!!

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 28

    $(img#alpaca).hover( function(){ $(img#alpaca).attr(src, img/2.jpg); }, function(){ $(img#alpaca).attr(src, img/1.jpg); } );

    lesson1.html

    id

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    lesson1.html!!

    ...

    jQuery

    { } ( ) , () ()

    ; ()

    id

    29

    lesson1.html

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 30

    HTML

    id () class (OK)

    $(img#alpaca).attr(src, img/2.jpg);

    id #

    class .

    id or class

    (: attribute)

    alpacaidimgsrc img/2.jpg

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 31

    $(img#alpaca).hover(

    function(){

    $(img#alpaca).attr(src, img/2.jpg);

    },

    function(){

    $(img#alpaca).attr(src, img/1.jpg);

    }

    );

    ......

    alpacaidimgsrc img/1.jpg

    alpacaidimgsrc img/2.jpg

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 32

    Lesson 1

    Lesson 1 $(img#alpaca).hover( function(){ $(img#alpaca).attr(src, img/2.jpg); }, function(){ $(img#alpaca).attr(src, img/1.jpg); } );

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Lesson 2

    33

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 34

    lesson1.htmllesson2.htmlimg/1.jpg2.jpg3.jpg4.jpg5.jpgjs/jquery-1.8.1.min.js

    lesson1.html

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 35

    Lesson 2 //

    lesson2.html

    UTF-8!!

    Lesson 2

    5.jpg

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 36

    var imgs = [ // '1.jpg', // 0 '2.jpg', // 1 '3.jpg', // 2 '4.jpg', // 3 '5.jpg' // 4 ];

    var index = 0; // (0)

    var timer = setInterval(function(){ if (index > 4) { // 4 index = 0; // 0 }

    $('img#alpaca').attr('src', 'img/' + imgs[index]); //

    index = index + 1; // 1 }, 3000 /* [] */);

    id

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    lesson2.html!!

    ...

    jQuery

    { } ( ) , () ()

    ; ()

    id

    37

    lesson2.html

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    var

    38

    ...

    var hoge = ;var foo = 123;

    var piyo = ;alert(piyo);

    alert

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    var imgs = ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg'];

    39

    ...

    OK

    0 1 2 3 4

    alert(imgs[0]);

    1.jpg

    0

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    var timer = setInterval(function(){

    //

    }, 3000);

    40

    setInterval ...

    []

    clearInterval(timer);

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 41

    if (index > 4) { // 4 index = 0; // 0}

    $('img#alpaca').attr('src', 'img/' + imgs[index]); //

    index = index + 1; // 1

    3

    ...

    3

    0 1 2 3 4 0 ...

    imgs = ['1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg'];0 1 2 3 4

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 42

    Lesson 2

    Lesson 2 var imgs = [ '1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg' ]; //

    var index = 0; // (0)

    var timer = setInterval(function(){ if (index > 4) { // 4 index = 0; // 0 }

    $('img#alpaca').attr('src', 'img/' + imgs[index]); //

    index = index + 1; // 1 }, 3000 /* [] */);

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Web

    43

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 44

    jQuery ...

    jQueryhttp://semooh.jp/jquery/

    jQuery Docshttp://docs.jquery.com/

    jQuery

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 45

    JavaScript ...

    JavaScript | MDNhttps://developer.mozilla.org/ja/docs/JavaScript/Reference

    JavaScriptisthttp://javascriptist.net/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 46

    JavaScript ...

    JavaScript 6David Flanagan

    JavaScript: The Good Parts Douglas Crockford

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    JavaScript & API

    47

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    jQuery Mobile

    Web JavaScriptHTML

    48

    http://jquerymobile.com/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Titanium

    iPhone, Android

    49

    http://www.appcelerator.com/platform/titanium-sdk/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Facebook SDK

    FacebookSSL

    50

    http://developers.facebook.com/docs/reference/javascript/

    for JavaScript

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    node.js

    WebJavaScript

    51

    http://nodejs.org/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    three.js

    3D

    52

    http://mrdoob.github.com/three.js/

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    53

    http://beanzinc.jp/contents/recruit

    URLFacebook

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Lesson 1CSS

    54

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 55

    CSShover

    CSSimg

    src

    div...

    !!

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 56

    Omake 1 div#alpaca { width: 400px; height: 300px; background-image: url(img/1.jpg); background-position: center center; background-repeat: no-repeat; } div#alpaca:hover { background-image: url(img/2.jpg); }

    omake1.html

    div

    hover

    CSS

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    Web

    WebSocket

    57

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 58

    Web

    ... (Pull)

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp ) 59

    WebSocket

    Web

    (Push)

    ... (Push)

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    node.js + Socket.IO http://apps.alpacat.com/chat_room/

    2

    60

  • 2012-11 HTML5JavaScript ( http://beanzinc.jp )

    fin.

    61