サイ本要約 13章 Webブラウザに組み込まれたJavaScript
- 作者: David Flanagan,村上列
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2007/08/14
- メディア: 大型本
- 購入: 50人 クリック: 911回
- この商品を含むブログ (263件) を見る
Windowオブジェクト
- Windowオブジェクトがグローバルオブジェクトの役目を果たす
- Windowオブジェクトのプロパティ=グローバル変数
クライアントサイドオブジェクトの階層構造とDOM
current window
┠ self, window, parent, top など
┠ navigator
┠ frames
┠ location
┠ history
┠ screen
┗ document
┠ forms
┠ elements
┠ anchors
┠ links
┠ images
┗ applets[]
イベント駆動型のプログラミングモデル
控えめなJavaScript(考え方)
- HTMLマークアップとJavaScriptコードの分離
- 正常に機能を停止する(JavaScriptコードがなくてもコンテンツが利用可能であるべき)
- JavaScriptが原因でHTMLページのアクセサビリティを低下させてはならない
プログラムの実行
スクリプト実行&ドキュメント解析 → onloadイベント生成 → ブラウザがイベントハンドラを呼び出し
クライアントサイドJavaScriptはシングルスレッド
InternetExplorer の条件付きコメント
<!--[if IE]> IEでのみ表示される <![endif]--> <!--[if gte IE6]> IE6以降でのみ表示される <![endif]-->
JavaScriptではできないこと
- 多くのブラウザでは新規ウィンドウを開くのはユーザの操作がトリガーとなるように制限されている
- JavaScriptプログラムがクローズ出来るのは、そのプログラムがオープンしたウィンドウだけ
- マウスがリンクの上に移動したときに飛び先がステータス行に表示されることを変更できない
- 1辺が100px未満のウィンドウのオープン・100px未満へのウィンドウのサイズ変更不可
- HTMLのFileUpload要素のvalueプロパティに値を設定できない
- 同一出身ポリシー
- 異なる出身のコンテンツにアクセスすることを制限するポリシー
- ドキュメントの「出身」とは、そのドキュメントをロードしたURLのプロトコルとホストとポート番号を組み合わせたもの。これらのうちどれかが異なれば「出身」が異なるとみなされる
- 同一出身ポリシーが関係するのはスクリプトが埋めこまれているドキュメントの出身。スクリプト自身の出身ではない。