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
JavaScript Basic For 6 Weeks(5/6)
Search
winwu
October 12, 2015
Programming
0
630
JavaScript Basic For 6 Weeks(5/6)
jQuery Basic(1)
winwu
October 12, 2015
Tweet
Share
More Decks by winwu
See All by winwu
Google Data Studio 分享
winwu
0
89
Google Analytics 分享 3 - 內容分組/自訂廣告活動/目標/事件
winwu
0
74
Google Analytics 分享 2 - 版面配置/資訊主頁/資料層級
winwu
0
240
Google Analytics 分享 1 - 基礎知識篇
winwu
0
330
HTML_CSS_前端基礎講座-4.pdf
winwu
0
420
HTML/CSS 前端基礎講座-3
winwu
0
440
HTML/CSS 前端基礎講座-2
winwu
0
450
2016 HTML CSS 前端基礎講座-1
winwu
1
530
2016 中正大學 weic.tw - RWD
winwu
3
940
Other Decks in Programming
See All in Programming
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
1
450
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.7k
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
110
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
260
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
550
return文におけるstd::moveについて
onihusube
1
1.1k
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
340
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
460
Featured
See All Featured
RailsConf 2023
tenderlove
29
940
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
520
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Facilitating Awesome Meetings
lara
50
6.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Embracing the Ebb and Flow
colly
84
4.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Adopting Sorbet at Scale
ufuk
73
9.1k
Building Applications with DynamoDB
mza
91
6.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
The Cult of Friendly URLs
andyhume
78
6.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Transcript
RAILS GIRLS WEEKLY JAVASCRIPT BASIC week 5 2015-10-13 Win Wu
JQUERY • 跨瀏覽器的 JavaScript 函式庫 (Library),簡化 JavaScript 操作 DOM 的⽅方式。
• ⺫⽬目前最受歡迎的 JavaScript 函式庫 (Library)。 http://ashleynolan.co.uk/blog/frontend-tooling-survey-2015-results The State of Front-End Tooling – 2015
source from: http://ashleynolan.co.uk/blog/frontend-tooling-survey-2015-results The State of Front-End Tooling – 2015
• 原作者 John Resign (http://ejohn.org/) • 開發者 jQuery Team •
穩定版本 2.1.4 • 編程語⾔言 JavaScript • MIT License • jquery.com http://ejohn.org/about/
None
下載 JQUERY 的幾種⽅方式 1. 直接從網路下載 jQuery 的 JavaScript 2. 使⽤用
CDN 載⼊入 jQuery 3. ⽤用 Bower 下載 4. ⽤用 git 下載 註: Bower(http://bower.io/) 是⼀一個 web package 的管理⼯工具,可以透過 Bower 下載第三⽅方的 JavaScript 套件。
1. 直接從網路下載 JQUERY 的 JAVASCRIPT • 如直接另存 http://code.jquery.com/jquery-1.11.3.min.js 現有的 jQuery
JavaScript 檔案,放到⾃自⼰己的網站資料夾,在⾴頁⾯面中透過 <script> 標籤引⼊入到⾴頁⾯面使⽤用。 • jQuery JavaScript 有分 min 跟沒有 min 的,差別在於有沒有壓縮 過⽽而已。當然有壓縮過就⽐比較輕量。
2. 使⽤用 CDN 載⼊入 JQUERY • CDN (Content Delivery Network),⼜又名內容傳遞網路。這是⼀一種
內容在網路上傳輸的快取機制。 • 其實就是相當於連線到別⼈人的主機取得 jQuery 的檔案。 • 缺點是⼀一定要有網路。 • 優點是加速網站瀏覽的速度,可有效分散流量,提升網站穩定 度, 節省網路頻寬。
2. 使⽤用 CDN 載⼊入 JQUERY • 常⾒見提供 CDN 的公司像是: ✓
MaxCDN (jQuery 使⽤用) ✓ Google CDN ✓ Microsoft CDN ✓ CDNJS CDN ✓ jsDelivr CDN • ⽤用法: • 直接在 <script> 標籤的 src 使⽤用 CDN 商的 jQuery 網址。
3. 使⽤用 BOWER • ⾸首先你要先安裝 Bower 這個⼯工具 • 在你的專案下設定 bower.json
或是使⽤用 bower init 去建⽴立⼀一個 bower.json 設定檔案。 • 使⽤用 Bower 指令下載 jQuery: bower install jquery • 預設情況下會放到 bower_components 的資料夾
⽰示意圖: 在已經有安裝過 bower 的環境下安裝 jQuery
4. 使⽤用 GIT 下載 • 從 Github clone 下來 git
clone git://github.com/jquery/jquery.git
JQUERY 的特點 • 跨瀏覽器的DOM元素選擇 • DOM 巡訪與更改:⽀支援CSS • 事件(Events) •
CSS 操作 • 特效和動畫(移動、淡⼊入、淡出等等) • Ajax • JavaScript Plugin • 輕量
準備可以執⾏行 JQUERY 的⾴頁⾯面 1. 只要⾴頁⾯面有載⼊入 jQuery 就可以。 2. 確認確實載⼊入 jQuery
3. 注意載⼊入的時機點 http://stackoverflow.com/questions/1828237/check-if-jquery-has-been-loaded-then-load-it-if-false
JQUERY 語法 • jQuery 的精神就是找到某樣你想操作的東⻄西(選取 Query HTML 的元 素),然後對它做事情。 $("#test").hide()
$( 選取想要抓到的物件 ) hide() 是 jQuery 的 API ⽤用來隱藏被選取的物件 • 範例: 針對 id 是 test 的 DOM 做隱藏
JQUERY 語法 $(selector).method() $ 代表的是 jQuery,像是 $(‘body’ ) 也能⽤用 jQuery(‘body’)
表⽰示,$ 是個簡化的表⽰示。 selector 代表的是要被抓到的 DOM 元素 method 針對被選取起來的 DOM 做操作
JQUERY ⽂文件就緒函式 (常⾒見) $(document).ready(function(){ // 把程式放在這邊 }); 為了防⽌止⾴頁⾯面還沒渲染完就執⾏行 jQuery 程式,
可以利⽤用 $(document).ready(function(){ }) 函式, 此函式代表著會等⽂文件都就緒後再執⾏行裡⾯面的程 式。
body { } JQUERY SELECTOR 選擇器 jQuery 使⽤用 CSS Selector
選取 HTML 元素。 #container ul > li { } CSS $(‘body) $(‘#container’) $(‘ul > li’) jQuery Selector 給會寫 css 的朋友: 只要你知道怎麼透過 css 選到東⻄西,你就會知道怎麼⽤用 jQuery 的 selector 選到該樣東⻄西。 參考更多: http://www.w3school.com.cn/jquery/jquery_ref_selectors.asp
JQUERY 事件 事件是 jQuery 核⼼心的功能。像前⾯面提到的 $(document).ready(function(){ }),ready 也是⼀一個事件。 jQuery 的事件處理分為以下這幾種類別:
(以官網為主) Browser Events Document Loading Event Handler Attachment Event Object Form Events Keyboard Events Mouse Events
JQUERY 事件 事件⽅方法會觸發被選取的元素的事件,或使⽤用⼀一 個函式 (function) 綁到⼀一個事件去。 常⾒見的事件⽤用法: $(document).ready(function) $(selector).click(function) $(selector).load(function)
$(selector).focus(function) $(selector).mouseover(function) http://www.w3school.com.cn/jquery/jquery_ref_events.asp
JQUERY 事件 範例: 當 <body> 被 click 時,執⾏行⼀一個 function http://jsbin.com/pifiguqopi/edit?html,css,js,output
JQUERY API
JQUERY 隱藏跟顯⽰示 隱藏 $(selector).hide( ) 顯⽰示 $(selector).show( ) 試試看: http://jsbin.com/rububebedu/edit?html,js,output
JQUERY 淡⼊入跟淡出 淡⼊入 $(selector).fadeIn( ) 淡出 $(selector).fadeOut( ) 試試看: http://jsbin.com/nihuleripu/edit?html,css,js,output
JQUERY SLIDE 滑動 slideDown() slideUp() slideToggle() 試試看: http://jsbin.com/lanileyona/edit?html,css,js,output (練習有雷 :P)
JQUERY 取得 DOM 的內容 text() 設定或是取得所選元素的內容 html() 設定或是取得所選元素的內容 val() 設定或是取得表單⽤用的
DOM 值
JQUERY 取得 DOM 的內容 text() 設定或是取得所選元素的內容
JQUERY 取得 DOM 的內容 html() 設定或是取得所選元素的內容
JQUERY 取得 DOM 的內容 val() 設定或是取得表單元素的值 http://jsbin.com/topijowabe/edit?js,console,output
學會多看⽂文件 http://api.jquery.com/addClass/
回家作業 http://webdesignerwall.com/tutorials/jquery-tutorials-for- designers
THANK YOU!