46
Rails Girls Weekly ڡ矐獮ᒒ翕殷ದ蔩 - week 2 Kuro Hsu 2016/06/21

Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

Embed Size (px)

Citation preview

Page 1: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

Rails Girls Weekly - week 2

Kuro Hsu 2016/06/21

Page 2: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

about me

• Kuro Hsu

• kurotanshi [at] gmail.com

• http://kuro.tw

Page 3: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 4: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 5: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

https://jsbin.com/

JS BIN

Page 6: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery

$('#header') // id="header"

$('.header') // class="header"

$('div') // <div>

$('div, p') // <div> <p>

$('body > .tag') // body div

$('body div') // body div ( )

$('div.body') // class="body" div

Page 7: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery jQuery

jQuery

Page 8: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery jQuery

jQuery

Page 9: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

.css( )

DOM

Page 10: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

event

• JavaScript

( )

• ( ) -> ( )

Page 11: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

$(SELECTOR).on( , callback);

.btn [ ] —> alert('Hello') [ ]

Page 12: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

this

this DOM $() jQuery jQuery

http://goo.gl/tebAOR

Page 13: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery

Page 14: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

• A B

Page 15: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery Effects Lab Page

https://goo.gl/ktdOD2

Page 16: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

http://goo.gl/22hOij

Page 17: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

.show() / .hide()

$('.block').show(); $('.block').hide();

$('.block').show(500); $('.block').show('slow'); $('.block').show('high');

$('.block').hide(500);

Page 18: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

http://goo.gl/0wiW5q

Page 19: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

fadeIn() / fadeOut()

$('.block').fadeIn(); $('.block').fadeOut();

$('.block').fadeIn(500); $('.block').fadeIn('slow'); $('.block').fadeIn('high');

$('.block').fadeOut(500);

Page 20: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

http://goo.gl/0wiW5q

Page 21: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

.toggle() / .fadeToggle()

$('.block').toggle();

$('.block').fadeToggle();

Page 22: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

[ ] https://goo.gl/GrnV8J

Page 23: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

slideDown() / slideUp() / slideToggle()

• / /

$('.block').slideDown(); $('.block').slideUp();

$('.block').slideDown(500); $('.block').slideDown('slow');

$('.block').slideToggle();

Page 24: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

[ ] http://goo.gl/ook3xo

Page 25: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery animate

$(selector).animate( { CSS }, [ ], [ ], [callback]);

$("div").animate({ 'left': '150px', 'bottom': '100px' }, 1000);

Page 26: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

$("div").animate({ 'height': '50px' }, 600);

$("div").animate({ 'width': '150px' }, 1000);

$("div").animate({ 'opacity': 0.5 }, 600);

• jQuery animate

http://goo.gl/QGrgOh

Page 27: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

http://goo.gl/d8tnaX

Page 28: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 29: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 30: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

http://goo.gl/HGYlUS

Page 31: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

https://goo.gl/lWz1eq

Page 32: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

: if - else

if ( A ) { …… }

else{ …… }

Page 33: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

: if - else

if ( 10 > 100 ) { alert('A'); }

else{ alert('B'); }

Page 34: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 35: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

.position()

• top left

$('.block').position();

$('.block').position().top; $('.block').position().left;

Page 36: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

.stop()

$('div').on('click', function(){

$(this).stop() .animate({'height': '+=50px'}, 1000);

});

• .stop()

http://goo.gl/1BjU7p

Page 37: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery Easing Plugin

https://github.com/gdsmith/jquery.easing

Page 38: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

$('div').on('click', function(){

$(this).animate( {'height': '200px'}, 1000, 'easeOutBack');

});

http://goo.gl/oLM2vy

Page 39: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

jQuery Advanced Effects Lab

https://goo.gl/yfTCZp

Page 40: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

• easing

• Easing http://easings.net/zh-tw

Page 41: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

week 2 -

• jQuery

• show / hide / toggle

• fadeIn / fadeOut / fadeToggle

• slideDown / slideUp / slideToggle

• jQuery Easing

Page 42: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 43: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 44: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 45: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3
Page 46: Rails Girls Weekly - 初探前端網頁技術 JavaScript 2/3

Thanks