「改訂新版jQuery本格入門」 サンプルプログラム集

「改訂新版jQuery本格入門」(以下、本書) をお読みいただきありがとうございます。このファイルは本書に掲載したサンプルプログラムの一部を収録したものです。本書をお読みいただく際の参考になれば幸いです。

サンプルプログラムはchapter00_prelude~chapter08およびappendix_bの各フォルダ(ディレクトリ)に章別に収めてあります。jQueryやQUnitなどのライブラリはlibディレクトリ以下に収めてあります。これらも必要に応じて参考にしてください。

なお、第7章のサンプルプログラムは、PHPによるサーバアプリケーションを含んでいますので、chapter07フォルダ(ディレクトリ)以下すべてをPHPプログラムを実行できるWebサーバ環境にコピーすると実行できるようになります。

(筆者より)

第1章

図1-1HTML文書内の要素の階層構造の例
リスト1-8擬似クラス(セレクタ)による要素の指定例(2)
リスト1-9擬似クラス(セレクタ)による要素の指定例(3)
リスト1-18メソッドの例で対象にしているHTML文書
リスト1-40子要素を数える

第2章

リスト2-9attrメソッドによる属性の設定と削除
リスト2-15propメソッドによるプロパティの設定と削除
リスト2-35各メソッドから得られる値

第3章

リスト3-3HTML形式の文字列から要素を生成する関数とその実行例
リスト3-25ユーザーから入力されたデータをそのまま表示(01)

第4章

リスト4-1要素の表示
リスト4-2要素の非表示(hide)と切り替え(toggle)
リスト4-3メソッドの実行順
リスト4-4slideUp/slideDown/slideToggleのアニメーション
リスト4-5fadeIn/fadeOut/fadeToggle/fadeToのアニメーション
リスト4-6animateの設定とアニメーションの動作
リスト4-7animateメソッドとキュー
リスト4-12queueとdequeueによるアニメーションの実行(5)
リスト4-13queueとdequeueによるアニメーションの実行(6)
リスト4-17名前付きキューに登録されたアニメーションの停止
リスト4-19オプションに設定される関数の実行順
リスト4-22easingのデモプログラム
リスト4-25色を変化させるデモプログラム

第5章

リスト5-1jQueryオブジェクトを$とは別の変数で代替
リスト5-2異なるバージョンのjQueryを共存
リスト5-6配列と同じ操作を行うメソッド
リスト5-7$(...)と$.parseHTMLとの組み合わせ
リスト5-8addやappendと$.parseHTMLとの組み合わせ
リスト5-13要素それぞれの繰り返し処理
リスト5-14配列の要素からHTMLを生成
リスト5-15$.eachにオブジェクトのプロパティを設定
リスト5-17mapメソッドの実行
リスト5-21thisの設定とfalseの処理も行うeach関数
リスト5-24オリジナルのmap関数
リスト5-25オリジナルのeach, mapをObject,Arrayのメソッドに拡張

第6章

リスト6-1ボタンがクリックされたらメッセージを表示
リスト6-4クリックとボタンのイベント処理
リスト6-5マウスカーソルと要素の重なり
リスト6-6メソッドによるイベントの発火
リスト6-7フォーカスが当たる要素とイベント処理
リスト6-8change/select/submitのイベント処理
リスト6-9イベントの発火順とキーコード
リスト6-10特殊キーの押下を判定
リスト6-11スクロールと要素の位置
リスト6-12スクロール可能な要素
リスト6-13readyと$.holdReady
リスト6-14bindによるイベント処理の登録
リスト6-15登録・削除に用いる名前空間
リスト6-16delegate/undelegate
リスト6-18$(...)によるイベント処理の設定
リスト6-19on/offによるメソッドの統一
リスト6-20offだけで指定できる'**'セレクタ
リスト6-21triggerとtriggerHandlerの違い
リスト6-22名前空間とカスタムイベントへの対応
リスト6-23$.proxyによるイベント処理の委譲
リスト6-24マウスカーソルの位置を表すプロパティ
リスト6-25イベントの発火と関連する要素
リスト6-26イベント処理の中止
リスト6-27イベントオブジェクトによるデータの受け渡し
リスト6-28clickをonに変更した場合
リスト6-29delegateTargetプロパティが指す要素
リスト6-34複数の処理を登録する
リスト6-35処理中のthisの値を設定する
リスト6-36状態を遷移させないメソッド
リスト6-37状態を確認するstateメソッド
リスト6-39thenの利用例
リスト6-42カウンタウィジェット
リスト6-43バーがすべて表示されたら完了を通知
リスト6-45複数のアニメーションがすべて終了した後にdoneで登録した処理を実行
リスト6-48$.whenにおけるprogress, then, doneの実行順
リスト6-51カウンタの値が上限(もしくは下限)に達したらdoneに登録された処理を実行
リスト6-52関数の登録と実行(1)
リスト6-53関数の登録と実行(2)
リスト6-54関数の登録と実行(3)
リスト6-55関数の登録と削除
リスト6-56Callbacksオブジェクトのフラグ
リスト6-57Callbacksオブジェクトの設定とその確認

第7章

リスト7-1JSONPのテスト
リスト7-4loadメソッドによるコンテンツへのアクセス
リスト7-6$.getメソッドによるコンテンツへのアクセス(Promise)
リスト7-8$.getメソッドによるコンテンツへのアクセス(コールバック関数)
リスト7-9$.getJSONと$.getScript
リスト7-10$.getと$.postの違い(1) - サーバ側の対応
リスト7-11$.getと$.postの違い(2) - XML形式のデータを送信
リスト7-11Web関連技術
リスト7-13serializeArray, serializeメソッドによるパラメータの生成
リスト7-14$.ajaxによるGETとPOST
リスト7-14Web関連技術
リスト7-18CSVファイルを元に<table>を生成
リスト7-19Webサーバから受信したCSVデータを元に<table>を生成
リスト7-20dataTypeとconvertersとの関係
リスト7-22JSONPによるRSSの読み込み
リスト7-23$.ajaxSetupによるオプションの設定
リスト7-28HTML文字列の生成処理(2)
リスト7-30HTML文字列の生成処理(3)
リスト7-32HTML文字列の生成処理(3)
リスト7-34カスタムイベント処理の引数
リスト7-35ヘッダの設定と取得
リスト7-36jqXHRへの処理の登録とイベント処理との関係
リスト7-37XDomainRequestオブジェクトによるクロスドメイン通信(IE限定)
リスト7-38$.ajaxPrefilterとdataType, convertersとの関係

第8章

リスト8-3合否の判定(1) - 真偽(Boolean)、等値(==)、同値(===)
リスト8-4合否の判定(2) - オブジェクトと配列
リスト8-5合否の判定(3) - プロパティの値
リスト8-6合否の判定(4) - 日付(Date)、正規表現(RegExp)、DOMオブジェクト
リスト8-7合否の判定(5) - エラー
リスト8-8モジュールの設定(Ajax同期通信テスト)
リスト8-9モジュールの設定(Ajax非同期通信テスト)
リスト8-10イベントハンドラの引数と実行順
リスト8-11オプションを設定してテスト実行
test_twittersearch.html[Test] つぶやき検索のテスト(Powered by Twitter Search API)
twittersearch.html[Demo] つぶやき検索(Powered by Twitter Search API)

Appendix B

リストB-1テスト対象のアプリケーション(old)
リストB-2アプリケーション用テストプログラム(old)
リストB-4テスト用のHTML文書(old)
リストB-5テスト対象のアプリケーション(new)
リストB-6アプリケーション用テストプログラム(new)
リストB-7テスト用のHTML文書(new)