目次
1章 文字列
- はじめに
- レシピ1.1 文字列を連結する
- レシピ1.2 部分文字列にアクセスする
- レシピ1.3 文字列の大文字小文字を変更する
- レシピ1.4 2つの文字列が等しいかどうか調べる
- レシピ1.5 正規表現を使わずに文字列が含まれているかどうか調べる
- レシピ1.6 正規表現を使って文字列が含まれているかどうか調べる
- レシピ1.7 部分文字列を検索し置換する
- レシピ1.8 特殊文字やエスケープ文字を使う
- レシピ1.9 クッキー文字列を読み書きする
- レシピ1.10 Unicode値と文字を変換する
- レシピ1.11 URL文字列をエンコード/デコードする
- レシピ1.12 BASE64文字列をエンコード/デコードする
2章 数値と日付
- はじめに
- レシピ2.1 数値と文字列を変換する
- レシピ2.2 数値かどうかを調べる
- レシピ2.3 数値が等しいかどうかを調べる
- レシピ2.4 浮動小数点値を四捨五入する
- レシピ2.5 数値を表示用にフォーマットする
- レシピ2.6 10進数と16進数缶で数値を変換する
- レシピ2.7 疑似乱数を生成する
- レシピ2.8 三角関数を計算する
- レシピ2.9 Dateオブジェクトを作成する
- レシピ2.10 過去や未来の日付を計算する
- レシピ2.11 2つの日付の間の日数を計算する
- レシピ2.12 日付を検証する
3章 配列とオブジェクト
- はじめに
- レシピ3.1 単純な配列を作成する
- レシピ3.2 多次元配列を作成する
- レシピ3.3 配列と文字列を変換する
- レシピ3.4 配列の要素に対して何らかの処理を行う
- レシピ3.5 単純な配列をソートする
- レシピ3.6 配列を結合する
- レシピ3.7 配列を分割する
- レシピ3.8 カスタムオブジェクトを作成する
- レシピ3.9 配列を高速に検索するためにハッシュテーブルをシミュレートする
- レシピ3.10 オブジェクトのプロパティを操作する
- レシピ3.11 オブジェクトの配列をソートする
- レシピ3.12 オブジェクトのプロパティをカスタマイズする
- レシピ3.13 配列やカスタムオブジェクトを文字列に変換する
4章 変数と関数とフロー制御
- はじめに
- レシピ4.1 JavaScriptの変数を作成する
- レシピ4.2 名前つき関数を作成する
- レシピ4.3 名前つき関数を入れ子にする
- レシピ4.4 無名関数を作成する
- レシピ4.5 関数呼び出しを遅らせる
- レシピ4.6 条件に応じて処理を分岐する
- レシピ4.7 スクリプトのエラーを上品に処理する
- レシピ4.8 スクリプトのパフォーマンスを改善する
5章 ブラウザ機能の判定
- はじめに
- レシピ5.1 ブラウザの製品名を判定する
- レシピ5.2 初期のブラウザのバージョンを判定する
- レシピ5.3 Internet Explorerのバージョンを判定する
- レシピ5.4 Mozillaのバージョンを判定する
- レシピ5.5 Safariのバージョンを判定する
- レシピ5.6 Operaのバージョンを判定する
- レシピ5.7 クライアントのオペレーティングシステムを判定する
- レシピ5.8 オブジェクトがサポートされているかどうかを判定する
- レシピ5.9 オブジェクトがプロパティやメソッドをサポートしているかどうかを調べる
- レシピ5.10 W3C DOM標準をサポートしているかどうかを判定する
- レシピ5.11 ブラウザが記述されている言語を判定する
- レシピ5.12 クッキーが利用可能かどうかを判定する
- レシピ5.13 ブラウザに特化したリンクや、機能に特化したリンクを作成する
- レシピ5.14 複数のブラウザバージョンで調査する
6章 ブラウザウィンドウの管理
- はじめに
- レシピ6.1 ブラウザウィンドウ制御に関する制限事項を受け入れる
- レシピ6.2 メインウィンドウの大きさを設定する
- レシピ6.3 メインウィンドウの位置を指定する
- レシピ6.4 メインウィンドウを最大化する
- レシピ6.5 新しいウィンドウを作成する
- レシピ6.6 ウィンドウを前面に移動する
- レシピ6.7 新しいウィンドウと通信する
- レシピ6.8 メインウィンドウと通信する
- レシピ6.9 Internet Explorerのモーダル/モードレスウィンドウを使用する
- レシピ6.10 クロスブラウザでモーダルダイアログウィンドウをシミュレートする
- レシピ6.11 レイヤーを使ってウィンドウをシミュレートする
7章 複数フレームの管理
- はじめに
- レシピ7.1 新しいフレームセット中に空のフレームを作成する
- レシピ7.2 あるフレームから別のフレームのコンテンツを変更する
- レシピ7.3 一度に複数のフレームのコンテンツを変更する
- レシピ7.4 フレームセットを1つのページで置き換える
- レシピ7.5 他サイトに「フレーム化」されるのを防ぐ
- レシピ7.6 ページがフレームセット中に確実に読み込まれるようにする
- レシピ7.7 フレームの大きさを読み出す
- レシピ7.8 フレームの大きさを変更する
- レシピ7.9 フレームセットの仕様を動的に変更する
8章動的なフォーム
- はじめに
- レシピ8.1 最初のテキストフィールドに自動的にフォーカスを移動する
- レシピ8.2 一般的なテキストフィールドの検証を行う
- レシピ8.3 検証に失敗した場合にフォームの送信を抑止する
- レシピ8.4 入力が不正なテキストフィールドに自動的にフォーカスを移動する
- レシピ8.5 カスタム検証オブジェクトを使う
- レシピ8.6 フォームの動作を変更する
- レシピ8.7 エンターキーでフォームを送信しないようにする
- レシピ8.8 エンターキーを使ってフォーカスを次のテキストフィールドに移動する
- レシピ8.9 任意のテキストボックス中でエンターキーを押下してフォームを送信する
- レシピ8.10 フォームコントロールを無効にする
- レシピ8.11 フォームコントロールを隠したり表示したりする
- レシピ8.12 テキストボックスへの入力を数値のみ(または英字のみ)に限定する
- レシピ8.13 固定長のテキスト入力ボックスに対して自動的にタブ移動する
- レシピ8.14 選択リストの内容を変更する
- レシピ8.15 ページ間でフォームデータをコピーする
9章 イベント処理
- はじめに
- レシピ9.1 IEとW3Cイベントモデルの差異を吸収し均一化する
- レシピ9.2 ページが読み込まれた後に処理を実行する
- レシピ9.3 複数のloadイベントハンドラを追加する
- レシピ9.4 クリックイベントの座標を調べる
- レシピ9.5 イベントに対してデフォルトの処理が行われるのを抑止する
- レシピ9.6 ダブルクリックをブロックする
- レシピ9.7 どの要素がイベントを受け取るのかを判定する
- レシピ9.8 どのマウスボタンが押されていたのかを判定する
- レシピ9.9 どの文字が入力されたのかを読み出す
- レシピ9.10 非文字キーのどのキーが押されたのかを取得する
- レシピ9.11 イベントの間に修飾キーが押されていたかどうかを判定する
- レシピ9.12 マウスカーソルの移動元/移動先となる要素を判定する
- レシピ9.13 音をイベントに同期させる
10章 ページのナビゲーション
- はじめに
- レシピ10.1 新しいページまたはアンカーを読み込む
- レシピ10.2 ページをブラウザの履歴に残さないようにする
- レシピ10.3 select要素を使ってページを移動する
- レシピ10.4 クッキーを使ってページ間でデータをやり取りする
- レシピ10.5 フレームを使ってページ間でデータをやり取りする
- レシピ10.6 URLを使ってページ間でデータをやり取りする
- レシピ10.7 コンテキストメニュー(右クリックメニュー)を作成する
- レシピ10.8 ナビゲーション用にドロップダウンメニューを作成する
- レシピ10.9 「パンくず」リストメニューを提供する
- レシピ10.10 折りたたみ式メニューを作成する
- レシピ10.11 折りたたみ式XMLメニューを作成する
11章 スタイルシートの管理
- はじめに
- レシピ11.1 要素に対して、グローバルなスタイルシートルールを設定する
- レシピ11.2 スタイルシートルールを要素のグループに対して設定する
- レシピ11.3 個々の要素にスタイルシートルールを設定する
- レシピ11.4 外部スタイルシートをインポートする
- レシピ11.5 ブラウザやオペレーティングシステム用に特化したスタイルシートをインポートする
- レシピ11.6 読み込んだ後にインポートされたスタイルシートを変更する
- レシピ11.7 スタイルシートを有効/無効にする
- レシピ11.8 要素に対するスタイルシートを切り替える
- レシピ11.9 スタイルシートルールを上書きする
- レシピ11.10 任意のコンテンツをスタイル付き要素にする
- レシピ11.11 ボディ要素をセンタリング表示する
- レシピ11.12 スタイルシートの有効なプロパティ値を読み出す
- レシピ11.13 最新のブラウザを強制的に標準互換モードにする
12章 静止コンテンツのための視覚効果
- はじめに
- レシピ12.1 画像を先読みしてキャッシュする
- レシピ12.2 画像を置換する(ロールオーバー)
- レシピ12.3 JavaScriptを使って、ロールオーバー用にダウンロードする画像の数を削減する
- レシピ12.4 CSSを使って、ロールオーバー用にダウンロードする画像の数を削減する
- レシピ12.5 画像の大きさを動的に変更する
- レシピ12.6 テキストスタイルプロパティを変更する
- レシピ12.7 ボディ部のテキストの大きさをユーザが選択できるようにする
- レシピ12.8 カスタムリンクスタイルを作成する
- レシピ12.9 背景色と背景画像を変更する
- レシピ12.10 要素を隠す/表示する
- レシピ12.11 要素の透明度を調整する
- レシピ12.12 トランジション効果を生成する
- レシピ12.13 canvas要素に図を描画する
13章 HTML要素の位置指定
- はじめに
- レシピ13.1 要素をドキュメント空間中で位置指定できるようにする
- レシピ13.2 位置指定要素をボディ部の要素に接続する
- レシピ13.3 DHTMLライブラリを使って位置を制御する
- レシピ13.4 divコンテナとspanコンテナのどちらを使用すればよいかを決める
- レシピ13.5 位置指定要素の重ね合わせ順序(Z座標)を変更する
- レシピ13.6 要素をほかの要素上にセンタリングする
- レシピ13.7 ウィンドウやフレームの中で要素をセンタリングする
- レシピ13.8 位置指定要素ではない要素の位置を取得する
- レシピ13.9 要素を直線に沿って移動する
- レシピ13.10 要素を円周に沿って移動する
- レシピ13.11 ドラッグ可能な要素を作る
- レシピ13.12 div要素のコンテンツをスクロールする
- レシピ13.13 カスタムスクロールバーを作る
- レシピ13.14 スライダーコントロールを作成する
14章 動的なコンテンツの作成
- はじめに
- レシピ14.1 ページを読み込んでいる間に動的にコンテンツを記述する
- レシピ14.2 新しいページのコンテンツを動的に作成する
- レシピ14.3 外部のHTMLコンテンツをインクルードする
- レシピ14.4 XMLデータを埋め込む
- レシピ14.5 データをJavaScriptオブジェクトとして埋め込む
- レシピ14.6 XMLデータをHTMLテーブルに変換する
- レシピ14.7 JavaScriptオブジェクトをHTMLテーブルに変換する
- レシピ14.8 XMLノードツリーをJavaScriptオブジェクトに変換する
- レシピ14.9 新しいHTML要素を作成する
- レシピ14.10 新しい要素用にテキストコンテンツを作成する
- レシピ14.11 要素とテキストノードが混在したものを作成する
- レシピ14.12 iframe要素を挿入しコンテンツを追加する
- レシピ14.13 HTML要素オブジェクトの参照を取得する
- レシピ14.14 同じクラスのすべての要素を参照する
- レシピ14.15 ボディコンテンツの一部を置き換える
- レシピ14.16 ボディ部のコンテンツを削除する
- レシピ14.17 XMLHttpRequestを使ってRESTリクエストを送信する
- レシピ14.18 XMLHttpRequestを使ってSOAP呼び出しを行う
- レシピ14.19 動的にテーブルをソートする
- レシピ14.20 ドキュメントノードツリーをたどる
- レシピ14.21 ドキュメントコンテンツを取得する
15章 動的コンテンツを使ったアプリケーション
- はじめに
- レシピ15.1 ランダムに格言を表示する
- レシピ15.2 ユーザが選択した範囲を任意の要素に変換する
- レシピ15.3 ボディ部のコンテンツを検索/置換する
- レシピ15.4 ユーザがテキストを編集できるようなページを設計する
- レシピ15.5 スライドショーを作成する
- レシピ15.6 ページを自動スクロールする
- レシピ15.7 ユーザに対してユーザの時刻に合わせたあいさつをする
- レシピ15.8 クリスマスまでの日数を表示する
- レシピ15.9 カウントダウンタイマーを表示する
- レシピ15.10 カレンダを使った日付選択ツールを作成する
- レシピ15.11 プログレスバーを表示する