Suche senden
Hochladen
プロになるためのJavaScript入門読書会 レジュメ
•
1 gefällt mir
•
1,209 views
Norito Agetsuma
Folgen
Unterhaltung & Humor
Technologie
Melden
Teilen
Melden
Teilen
1 von 76
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
leverages_event
3時間濃縮CakePHP2.1 in PHPカンファレンス北海道2012
3時間濃縮CakePHP2.1 in PHPカンファレンス北海道2012
Yusuke Ando
jQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & Tips
yoshikawa_t
jQuery Mobile 1.3 最新情報
jQuery Mobile 1.3 最新情報
yoshikawa_t
Django boodoo
Django boodoo
泰 増田
swooleを試してみた
swooleを試してみた
Yukihiro Katsumi
Try Jetpack
Try Jetpack
Hideaki Miyake
jQuery Mobile 最新情報 & Tips
jQuery Mobile 最新情報 & Tips
yoshikawa_t
Empfohlen
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
「スピード」と「品質」を実現するPHP開発チームの取り組み~AngularJS+FuelPHP+AspectMock~
leverages_event
3時間濃縮CakePHP2.1 in PHPカンファレンス北海道2012
3時間濃縮CakePHP2.1 in PHPカンファレンス北海道2012
Yusuke Ando
jQuery Mobile 1.2 最新情報 & Tips
jQuery Mobile 1.2 最新情報 & Tips
yoshikawa_t
jQuery Mobile 1.3 最新情報
jQuery Mobile 1.3 最新情報
yoshikawa_t
Django boodoo
Django boodoo
泰 増田
swooleを試してみた
swooleを試してみた
Yukihiro Katsumi
Try Jetpack
Try Jetpack
Hideaki Miyake
jQuery Mobile 最新情報 & Tips
jQuery Mobile 最新情報 & Tips
yoshikawa_t
俺のフックがこんなに簡単なわけがない。
俺のフックがこんなに簡単なわけがない。
Hishikawa Takuro
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
Arata Fujimura
J qmobiはjqueryから軽量化しているか
J qmobiはjqueryから軽量化しているか
Hisashi Aruji
Ci tutorial
Ci tutorial
Kazuaki Ueda
Pyramid入門
Pyramid入門
Atsushi Odagiri
CSS Nite in Matsuyama vol.1 - session 4
CSS Nite in Matsuyama vol.1 - session 4
arisu yano
MTで学ぶセキュアプログラミング@MT Tokyo
MTで学ぶセキュアプログラミング@MT Tokyo
純生 野田
Gen-Template-for-Perl
Gen-Template-for-Perl
nasneg
Flask勉強会その1
Flask勉強会その1
Masato Kawamura
JavaScript/CSS 2015 Autumn
JavaScript/CSS 2015 Autumn
Koji Ishimoto
PHP classの教室
PHP classの教室
Yusuke Ando
SocialWeb Conference vol.5 OpenSocial Night #2
SocialWeb Conference vol.5 OpenSocial Night #2
Nobuhiro Nakajima
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
Hiroaki KOBAYASHI
CakePHP+Smartyハイブリッドによるラクラク開発
CakePHP+Smartyハイブリッドによるラクラク開発
Shinzo SAITO
Backbone.js
Backbone.js
daisuke shimizu
behatで始めるBDD
behatで始めるBDD
Tsutomu Chikuba
OSC京都2011
OSC京都2011
haganemetal
最高のツイッタークライアントを求めて
最高のツイッタークライアントを求めて
airtoxin Ishii
Visualforce + jQuery
Visualforce + jQuery
Salesforce Developers Japan
Jetpack Workshop
Jetpack Workshop
Hideaki Miyake
速くなければスマフォじゃない - インターンバージョン-
速くなければスマフォじゃない - インターンバージョン-
Kazunari Hara
初めての Data api
初めての Data api
Yuji Takayama
Weitere ähnliche Inhalte
Was ist angesagt?
俺のフックがこんなに簡単なわけがない。
俺のフックがこんなに簡単なわけがない。
Hishikawa Takuro
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
Arata Fujimura
J qmobiはjqueryから軽量化しているか
J qmobiはjqueryから軽量化しているか
Hisashi Aruji
Ci tutorial
Ci tutorial
Kazuaki Ueda
Pyramid入門
Pyramid入門
Atsushi Odagiri
CSS Nite in Matsuyama vol.1 - session 4
CSS Nite in Matsuyama vol.1 - session 4
arisu yano
MTで学ぶセキュアプログラミング@MT Tokyo
MTで学ぶセキュアプログラミング@MT Tokyo
純生 野田
Gen-Template-for-Perl
Gen-Template-for-Perl
nasneg
Flask勉強会その1
Flask勉強会その1
Masato Kawamura
JavaScript/CSS 2015 Autumn
JavaScript/CSS 2015 Autumn
Koji Ishimoto
PHP classの教室
PHP classの教室
Yusuke Ando
SocialWeb Conference vol.5 OpenSocial Night #2
SocialWeb Conference vol.5 OpenSocial Night #2
Nobuhiro Nakajima
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
Hiroaki KOBAYASHI
CakePHP+Smartyハイブリッドによるラクラク開発
CakePHP+Smartyハイブリッドによるラクラク開発
Shinzo SAITO
Backbone.js
Backbone.js
daisuke shimizu
behatで始めるBDD
behatで始めるBDD
Tsutomu Chikuba
OSC京都2011
OSC京都2011
haganemetal
最高のツイッタークライアントを求めて
最高のツイッタークライアントを求めて
airtoxin Ishii
Was ist angesagt?
(18)
俺のフックがこんなに簡単なわけがない。
俺のフックがこんなに簡単なわけがない。
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
J qmobiはjqueryから軽量化しているか
J qmobiはjqueryから軽量化しているか
Ci tutorial
Ci tutorial
Pyramid入門
Pyramid入門
CSS Nite in Matsuyama vol.1 - session 4
CSS Nite in Matsuyama vol.1 - session 4
MTで学ぶセキュアプログラミング@MT Tokyo
MTで学ぶセキュアプログラミング@MT Tokyo
Gen-Template-for-Perl
Gen-Template-for-Perl
Flask勉強会その1
Flask勉強会その1
JavaScript/CSS 2015 Autumn
JavaScript/CSS 2015 Autumn
PHP classの教室
PHP classの教室
SocialWeb Conference vol.5 OpenSocial Night #2
SocialWeb Conference vol.5 OpenSocial Night #2
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
CakePHP+Smartyハイブリッドによるラクラク開発
CakePHP+Smartyハイブリッドによるラクラク開発
Backbone.js
Backbone.js
behatで始めるBDD
behatで始めるBDD
OSC京都2011
OSC京都2011
最高のツイッタークライアントを求めて
最高のツイッタークライアントを求めて
Ähnlich wie プロになるためのJavaScript入門読書会 レジュメ
Visualforce + jQuery
Visualforce + jQuery
Salesforce Developers Japan
Jetpack Workshop
Jetpack Workshop
Hideaki Miyake
速くなければスマフォじゃない - インターンバージョン-
速くなければスマフォじゃない - インターンバージョン-
Kazunari Hara
初めての Data api
初めての Data api
Yuji Takayama
Data api workshop at Co-Edo
Data api workshop at Co-Edo
Yuji Takayama
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
Yatabe Terumasa
Jqm20120210
Jqm20120210
cmtomoda
自作node.jsフレームワークとnginxを使ってラジオサイトを作ってみた
自作node.jsフレームワークとnginxを使ってラジオサイトを作ってみた
Yuki Takei
New Generation Build System "Fly"
New Generation Build System "Fly"
deepblue will
Djangoフレームワークの紹介
Djangoフレームワークの紹介
Shinya Okano
Mashup Caravan in オープンソースカンファレンス2011 Hiroshima: infoScoop OpenSource
Mashup Caravan in オープンソースカンファレンス2011 Hiroshima: infoScoop OpenSource
cmutoh
Magento meet up Tokyo#1 for Design
Magento meet up Tokyo#1 for Design
Miho Nakano
JavaScript 実践講座 Framework, Tool, Performance
JavaScript 実践講座 Framework, Tool, Performance
クラスメソッド株式会社
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
Yuji Takayama
あの時AngularJSと出会った僕らは
あの時AngularJSと出会った僕らは
Muyuu Fujita
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
Yuji Takayama
20110714 j queryベーシック
20110714 j queryベーシック
良太 増子
Android Lecture #03 @PRO&BSC Inc.
Android Lecture #03 @PRO&BSC Inc.
Yuki Higuchi
Ruby on JavaScript
Ruby on JavaScript
Masaya Kogawa
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
Yuji Takayama
Ähnlich wie プロになるためのJavaScript入門読書会 レジュメ
(20)
Visualforce + jQuery
Visualforce + jQuery
Jetpack Workshop
Jetpack Workshop
速くなければスマフォじゃない - インターンバージョン-
速くなければスマフォじゃない - インターンバージョン-
初めての Data api
初めての Data api
Data api workshop at Co-Edo
Data api workshop at Co-Edo
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
Jqm20120210
Jqm20120210
自作node.jsフレームワークとnginxを使ってラジオサイトを作ってみた
自作node.jsフレームワークとnginxを使ってラジオサイトを作ってみた
New Generation Build System "Fly"
New Generation Build System "Fly"
Djangoフレームワークの紹介
Djangoフレームワークの紹介
Mashup Caravan in オープンソースカンファレンス2011 Hiroshima: infoScoop OpenSource
Mashup Caravan in オープンソースカンファレンス2011 Hiroshima: infoScoop OpenSource
Magento meet up Tokyo#1 for Design
Magento meet up Tokyo#1 for Design
JavaScript 実践講座 Framework, Tool, Performance
JavaScript 実践講座 Framework, Tool, Performance
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
あの時AngularJSと出会った僕らは
あの時AngularJSと出会った僕らは
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data API CMS どうでしょう - 仙台編 -
20110714 j queryベーシック
20110714 j queryベーシック
Android Lecture #03 @PRO&BSC Inc.
Android Lecture #03 @PRO&BSC Inc.
Ruby on JavaScript
Ruby on JavaScript
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
Mehr von Norito Agetsuma
Quarkus入門
Quarkus入門
Norito Agetsuma
Java EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfile
Norito Agetsuma
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
Norito Agetsuma
JavaOne2015報告会 Java EE アップデート #j1jp
JavaOne2015報告会 Java EE アップデート #j1jp
Norito Agetsuma
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
Norito Agetsuma
Jbatch実践入門 #jdt2015
Jbatch実践入門 #jdt2015
Norito Agetsuma
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Norito Agetsuma
Java EE8 Report
Java EE8 Report
Norito Agetsuma
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Norito Agetsuma
Unixカーネルの設計 7 プロセスの制御
Unixカーネルの設計 7 プロセスの制御
Norito Agetsuma
JJUG 11月ナイトセミナー CDIをはじめよう
JJUG 11月ナイトセミナー CDIをはじめよう
Norito Agetsuma
AeroGear & Java EE 7 で簡単プッシュ
AeroGear & Java EE 7 で簡単プッシュ
Norito Agetsuma
SQLアンチパターン読書会 レジュメ
SQLアンチパターン読書会 レジュメ
Norito Agetsuma
JSR 352 “Batch Applications for the Java Platform”
JSR 352 “Batch Applications for the Java Platform”
Norito Agetsuma
Java Batch 仕様 (Public Review時点)
Java Batch 仕様 (Public Review時点)
Norito Agetsuma
Lt agetsuma 拡大するcdi
Lt agetsuma 拡大するcdi
Norito Agetsuma
Mehr von Norito Agetsuma
(16)
Quarkus入門
Quarkus入門
Java EEを補完する仕様 MicroProfile
Java EEを補完する仕様 MicroProfile
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
JavaOne2015報告会 Java EE アップデート #j1jp
JavaOne2015報告会 Java EE アップデート #j1jp
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
Jbatch実践入門 #jdt2015
Jbatch実践入門 #jdt2015
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
Java EE8 Report
Java EE8 Report
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Unixカーネルの設計 7 プロセスの制御
Unixカーネルの設計 7 プロセスの制御
JJUG 11月ナイトセミナー CDIをはじめよう
JJUG 11月ナイトセミナー CDIをはじめよう
AeroGear & Java EE 7 で簡単プッシュ
AeroGear & Java EE 7 で簡単プッシュ
SQLアンチパターン読書会 レジュメ
SQLアンチパターン読書会 レジュメ
JSR 352 “Batch Applications for the Java Platform”
JSR 352 “Batch Applications for the Java Platform”
Java Batch 仕様 (Public Review時点)
Java Batch 仕様 (Public Review時点)
Lt agetsuma 拡大するcdi
Lt agetsuma 拡大するcdi
プロになるためのJavaScript入門読書会 レジュメ
1.
第5章 jQuery UI
2.
5.1 jQuery UI
を構成するコンポーネント UI Core Core Widget (ファクトリ) Mouse Position (位置調整) Interactions (動きを表現) Widgets Effects (アニメーション) • Draggable • Droppable • Resizable • Selectable • Sortable • Accordion • Autocomplete • Button • Dialog • Slider • Fade • Shake • Drop
3.
5.1 Interactionsの例 Resizable $(function() { $(
"#resizable" ).resizable(); }); divを引っ張って、のばしたり、縮めたり
4.
5.1 Interactionsの例 Draggable /
Droppable $(function() { $( "#draggable" ).draggable(); $( "#droppable" ).droppable({ drop: function( event, ui ) { $( this ).addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped!" ); } }); });
5.
5.1 Widgetsの例 Accordion $(function() { $("#accordion").accordion(); }); <div
id="accordion"> <h3>Section 1</h3> <div> <p>...</p> </div> <h3>Section 2</h3> </div>
6.
5.1 Widgetsの例 Datepicker <script> $(function() { $("#datepicker").datepicker(); }); </script> <p>Date: <input
type="text"id="datepicker"/> </p>
7.
5.1 Effects http://jqueryui.com/demos/ (スライドよりも実物がわかりやすい) PowerPointのアニメーションとだいたい同じ。
8.
これまでの通り 簡単に使えるのが何よりも特徴 (セレクタで要素を選択してメソッド呼び出し)
9.
5.2 利用の準備 ダウンロード時に選んでサイズを小さくできる
10.
5.2 インストール <link type="text/css" rel="stylesheet" href="css/jquery-ui-1.10.2.custom.css"
/> <script src="js/jquery-1.9.1.js"></script> <script src="js/jquery-ui.js"></script> jQueryと同じように読み込むだけ
11.
5.3 jQuery UI
の基本動作 $(function() { $("#button").button(); }); セレクタで指定してから、メソッド呼び出し。 $関数の引数に渡すと、DOMロード終了時に jQueryによりコールバックされます。
12.
5.3.1 オプションの設定 $("#button").button({ disabled: true }); Buttonメソッドの引数に オブジェクト形式{name:value}
で指定する。
13.
5.3.1 オプションの取得 $("#button").button( “option”, ”disabled”); 第1引数に文字列optionを指定して、 第2引数にオプションを指定する。
14.
5.3.1 Widget生成後のオプション指定 $("#button").button( “option”, ”disabled”,
false); 第3引数に値を設定することで、 Widgetを生成した後にオプション値を設定可能
15.
5.3.2 イベント $("#draggable").draggable({ start: function(event,
ui) {..} }); メソッドの引数に指定する方法 event : jQueryのイベントオブジェクト。 イベントが発生した座標、時刻などが取得可能。 ui : 各部品により中身は異なる。 例えば、ドラッグ可能オブジェクトであれば、 ui.draggable.text()で、テキストを取得可能。
16.
5.3.2 イベント $("#draggable").on('dragstart', function(event, ui)
{…}); onメソッドを利用する方法 イベント名はstart、イベントタイプはdragstart。 onメソッド使用時にはイベントタイプを指定する。
17.
5.3.3 部品の有効化・無効化 $("#draggable").draggable('enable'); $("#draggable").draggable('disable'); 前述したdisabledオプションに加えて、 メソッドの引数でも指定可能。
18.
5.4 インタラクション
19.
ドラッグ & ドロップ jQueryUIコードの解説 5.4
インタラクション
20.
まずはデモ 5.4 インタラクション
21.
初期状態
22.
ドラッグ & ドロップ
する。
23.
背景色の変更とメッセージ表示 Drop here →
Hello Jiro!
24.
<body> <div id="taro" class="draggable">Taro</div> <div
id="jiro" class="draggable">Jiro</div> <div id="target" class="droppable">Drop here</div> </body>
25.
$(function(){ $(".draggable").draggable(); $("#target").droppable({ drop: function(event, ui)
{ $(this).addClass( "ui-state-highlight" ) .html($('#msg').render( {msg: "Hello", text: ui.draggable.text()} )); }, <body> <div id="taro" class="draggable">Taro</div> <div id="jiro" class="draggable">Jiro</div> <div id="target" class="droppable">Drop here</div> </body> TaroとJiroに.draggable();
26.
id=targetを.droppable <body> <div id="taro" class="draggable">Taro</div> <div
id="jiro" class="draggable">Jiro</div> <div id="target" class="droppable">Drop here</div> </body> $(function(){ $(".draggable").draggable(); $("#target").droppable({ drop: function(event, ui) { $(this).addClass( "ui-state-highlight" ) .html($('#msg').render( {msg: "Hello", text: ui.draggable.text()} )); },
27.
dropイベントにスタイル変更と テキストの変更を追加。 <body> <div id="taro" class="draggable">Taro</div> <div
id="jiro" class="draggable">Jiro</div> <div id="target" class="droppable">Drop here</div> </body> $(function(){ $(".draggable").draggable(); $("#target").droppable({ drop: function(event, ui) { $(this).addClass( "ui-state-highlight" ) .html($('#msg').render( {msg: "Hello", text: ui.draggable.text()} )); },
28.
仕様2 : 追い出すとGood
byeメッセージに変わる
29.
Outイベントに、 スタイルのremoveClassと メッセージ変更を追加 <div id="target" class="droppable">Drop
here</div> $(function(){ $(".draggable").draggable(); $("#target").droppable({ out: function( event, ui ) { $(this).removeClass( "ui-state-highlight" ) .html($('#msg').render( {msg: "Good bye", text: ui.draggable.text()})); }
30.
<div id="target" class="droppable">Drop
here</div> $(function(){ $(".draggable").draggable(); $("#target").droppable({ out: function( event, ui ) { $(this).removeClass( "ui-state-highlight" ) .html($('#msg').render( {msg: "Good bye", text: ui.draggable.text()})); } 引数uiを通して、ドラッグされた オブジェクトのテキストを取得
31.
『リサイズ』と『並べ替え』は 本著者のGithub参照 5.4 インタラクション
32.
5.5 ウィジェット(widgets)
33.
アコーディオン jQueryUIコードの解説 5.5 ウィジェット
34.
まずはデモ 5.5 ウィジェット
35.
初期状態
36.
クリックするとこうなる。
37.
<body> <div id="accordion"> <h3><a href="#">First</a></h3> <div>This
is first.</div> <h3><a href="#">Second</a></h3> <div>This is second.</div> <h3><a href="#">Third</a></h3> <div>This is third.</div> <h3><a href="#">Fourth</a></h3> <div>This is fourth.</div> </div> </body> $(function(){ $('#accordion').accordion(); }); Divに対して .accordion()するだけ.
38.
自動補完 jQueryUIコードの解説 5.5 ウィジェット
39.
まずはデモ 5.5 ウィジェット
40.
一定の文字数入力すると候補が出る。
41.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> $(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
42.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> $(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});}); まずは、inputに .autocompleteする。
43.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> 候補文字列を配列で用意する。 http://../fruitsのように、 jsonを返すAPIも指定可能$(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
44.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> $(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});}); 何文字入力したら補完候補を 表示するか指定。 デフォルトは1文字。
45.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> 文字補完のコールバック関数。 一致する候補を探すロジックは 自分で実装する。$(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
46.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> 第1引数のtermプロパティから フォームの入力値が取得できる。 $(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
47.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> 候補リストfruitsから 入力値req.termと一致する 文字列を抽出し、resultに格納。$(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
48.
<body> <label for="fruit">Your favorite
fruit: </label> <input id="fruit"/> </body> 第2引数resに、 抽出した候補配列を渡すと、 補完候補として表示される。$(function(){ var fruits = [ 'Apple','Orange','Peach','Pear','Blueberry','Pineapple']; $('#fruit').autocomplete({ minLength: 2, source: function(req, res) { var result = []; for (var i = 0; i < fruits.length; i++) { if (fruits[i].indexOf(req.term) == 0) { result.push(fruits[i]); } } res(result); }});});
49.
一番良く使われる 日付入力の実装 5.5 ウィジェット
50.
フォームをクリックするとカレンダー。
51.
<p>Date: <input type="text"
id="datepicker" /></p> $(function() { $( "#datepicker" ).datepicker(); }); Inputに対して、 .datepicker()を呼び出すだけ。
52.
datepickerは便利なので、 オプションも紹介します。
53.
デフォルトはmm/dd/yy フォーマット yy/mm/dd形式に 変更したい。
54.
<p>Date: <input type="text"
id="datepicker" /></p> $(function() { $( "#datepicker" ).datepicker({ dateFormat: 'yy/mm/dd', firstDay:1 }); }); datepickerの引数オブジェクトに firstDayプロパティを設定する。 0が日曜日で1が月曜日。 デフォルトは0(日曜日)。
55.
デフォルトは日曜始まり 月曜始まりに変更したい
56.
<p>Date: <input type="text"
id="datepicker" /></p> $(function() { $( "#datepicker" ).datepicker({ dateFormat: 'yy/mm/dd', firstDay:1 }); }); dateFormatプロパティを設定する。 例ではyy/mm/ddを指定。
57.
デフォルトは英語表記 日本語に変更したい
58.
<script src="jquery-1.9.1.js"></script> <script src="ui/1.10.3/jquery-ui.js"></script> <script
src="ui/1.10.3/i18n/jquery-ui-i18n.min.js"></script> $(function() { $.datepicker.setDefaults($.datepicker.regional[ "ja" ] ); $( "#datepicker" ).datepicker(); }); ローカライズされた jquery-uiを追加でロードする。 SetDefaultsメソッドにより、 対象の言語を事前に指定する。
59.
$(function() { // $.datepicker.setDefaults($.datepicker.regional[
"ja" ] ); $( "#datepicker" ).datepicker(); }); setDefaultsの指定を忘れると、うまく日本語がでないので注意 漢数字で出てくる
60.
5.6 効果(Effects)
61.
animeteメソッド 時間をかけてCSS属性を変化させる。 5.6 効果
62.
5.6 効果 まずはデモ
63.
5.6 効果 divが徐々に大きくなり、変色する。
64.
<div id="target" style="background-color:
red; height: 100px; width: 100px"> </div> <button id="button" type="button">start</button> $(function() { $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }); });
65.
<div id="target" style="background-color:
red; height: 100px; width: 100px"> </div> <button id="button" type="button">start</button> $(function() { $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }); }); デフォルトのスタイルは ・背景色は赤 ・縦横100pxずつ
66.
<div id="target" style="background-color:
red; height: 100px; width: 100px"> </div> <button id="button" type="button">start</button> $(function() { $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }); }); ボタンのイベントハンドラに、 divのアニメーションメソッドを コールバック指定。
67.
<div id="target" style="background-color:
red; height: 100px; width: 100px"> </div> <button id="button" type="button">start</button> $(function() { $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }); }); ・背景色は緑 ・縦横は200px ・2000ミリ秒かけて変化させる
68.
シンタックスエラーと どう戦えば良いのか。 余談 : お世話になったツール
69.
余談 : お世話になったツール $(function()
{ $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }) }); 問. シンタックスエラーはどこか
70.
余談 : お世話になったツール $(function()
{ $("#button").click(function() { $("#target").animate({ backgroundColor: "#00ff00", width: 200, height : 200 }, 2000 ); }); }); 答. clickメソッドの終了セミコロンがない
71.
私、30分以上はまりました...
72.
余談 : お世話になったツール http://jshint.com
73.
はやくJSHintを使えばよかったと 後悔しています
74.
具体的なご指摘を頂けました。 Line9: セミコロンがありません。
75.
Web直接入力以外にも、 Vim/Emacs/Subline Text2 Gitコミット前チェックツール など、色々対応しています。
76.
ユーティリティ 独自ウィジェットは次回紹介予定。
Jetzt herunterladen