情報システム工学科 ラシキアゼミ 3年 H 田中直樹

Slides:



Advertisements
Similar presentations
JavaScript における DOM 操作 XML 読み込み Ajax( 動的 HTML 編集 ) 情報システム工学科ラシキアゼミ 3年 H 107072 田中直樹.
Advertisements

1 情報処理基礎 2006 年 7 月 6 日. 2 本日の学習項目 HTML 文書の基礎知識を習得する。 ホームページ・ビルダーの基本的な使 い方を習得する。 ホームページの作成 自己紹介のためのホームページを作成する。
XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
情報アプリケーション1 2006 年 10 月 12 日 第四回資料 担当 重定 如彦. 目次 データの送信とフォーム クイズ CGI 複数のパーツのデータの分割方法 配列変数.
1 なんとなく Ajax ~新しくて古い XMLHttp 川合孝典 (Kansai.pm) 2005/5/22.
OWL-Sを用いたWebアプリケーションの検査と生成
プログラミング演習II 2004年11月 30日(第6回) 理学部数学科・木村巌.
情報理工学部 情報システム工学科 ラシキアゼミ 3年 H 井奈波 和也
XHTML構文検証手法における スクリプト要素の静的解析アルゴリズム
情報理工学部 情報システム工学科 3年 H 井奈波 和也
JavaScript プログラミング入門 2006/11/10 神津.
プログラミング言語としてのR 情報知能学科 白井 英俊.
JavaScriptゼミ第2回 2-2 変数とリテラル 発表者 直江宗紀.
Win32APIとMFC H107102 古田雅基 H107048 佐藤一樹 H107126 山下洋平.
HTMLの記述と WWWにおける情報公開 遠藤
情報理工学部 情報システム工学科 ラシキアゼミ3年 H 岡田 貴大
早稲田大学大学院理工学研究科 情報科学専攻修士2年 後藤滋樹研究室 坂本義裕
VBA H106077 寺沢友宏.
情報伝播によるオブジェクト指向プログラム理解支援の提案
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
第1回 JavaScriptゼミ ・ scriptエレメント ・ 記述における諸注意 ・ 古いブラウザへの対応方法
オペレーティングシステムⅡ 第3回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/10/16.
JavaScript 成瀬 基樹 平野 敦 北浦 繁.
Bottle/Pythonによる Webアプリ入門
卒研:データベースチーム 第4回 DOMを使った処理
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
JQueryでAjax 藤田@ジャストプレイヤー ※参考しまくり文献 jQuery日本語リファレンス.
プログラミング演習Ⅰ 課題2 10進数と2進数 2回目.
基礎プログラミング演習 第7回 繰り返し.
XML読み込みとDOM操作で Ajaxに近づこう
スクリプト言語を用いたPHITSの連続実行
データベース設計 第9回 Webインタフェースの作成(1)
第7回 条件による繰り返し.
第8章 Web技術とセキュリティ   岡本 好未.
岩村雅一 知能情報工学演習I 第8回(後半第2回) 岩村雅一
9.1 DOMの概要 9.2 DOMプログラミングの基礎 9.3 DOMのプログラミング例
第4回JavaScriptゼミ セクション2-8 発表者 直江 宗紀.
暗黙的に型付けされる構造体の Java言語への導入
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
インラインスクリプトに対するデータフロー 解析を用いた XHTML 文書の構文検証
アルゴリズムとプログラミング (Algorithms and Programming)
第7回JavaScriptゼミ セクション4-5 発表者 直江 宗紀.
基礎プログラミング演習 第5回 関数とイベントを使ったプログラム.
第7回 条件による繰り返し.
復習 前回の関数のまとめ(1) 関数はmain()関数または他の関数から呼び出されて実行される.
情報スキル活用 第2週 基礎技術ー2 : Webページの基本形.
コンピュータ プレゼンテーション.
基礎プログラミング演習 第12回.
プログラミングⅠ 平成30年10月22日 森田 彦.
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
プログラミング言語論 第六回 理工学部 情報システム工学科 新田直也.
C言語 はじめに 2016年 吉田研究室.
JavaScriptを含んだHTML文書に対する データフロー解析を用いた構文検証手法の提案
統計ソフトウエアRの基礎.
アルゴリズムとプログラミング (Algorithms and Programming)
基礎プログラミング演習 第6回.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
ウェブデザイン演習 第6回.
第5回 プログラミングⅡ 第5回
情報処理Ⅱ 2007年12月3日(月) その1.
2005年度 データ構造とアルゴリズム 第2回 「C言語の復習:配列」
例題のプログラムを通して JavaScriptの仕組みを理解することとします。
情報処理Ⅱ 2005年11月25日(金).
プログラミング基礎a 第5回 C言語によるプログラミング入門 配列と文字列
プログラミング入門2 第5回 配列 変数宣言、初期化について
情報処理Ⅱ 小テスト 2005年2月1日(火).
分岐(If-Else, Else if, Switch) ループ(While, For, Do-while)
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
Presentation transcript:

情報システム工学科 ラシキアゼミ 3年 H107072 田中直樹 XML+JavaScript(基礎) 情報システム工学科 ラシキアゼミ 3年 H107072 田中直樹

目次 XMLの概要・技術 (課題1) JavaScriptの概要 JavaScriptの基本的技術 (課題2、課題3)

目標 XMLの構造・機能を理解し、それに従ったXMLファイルを作成できる JavaScript・XMLそれぞれの機能を理解する XMLの構造・機能を理解し、それに従ったXMLファイルを作成できる JavaScriptを用いて、HTMLで書かれた要素を編集・改変できるようになる

XMLの概要・技術

XMLとは? 文書やデータの意味や構造を記述するためのマークアップ言語の一つ(読みやすさが利点) XMLはユーザが独自のタグを指定できる eXtensible Markup Language の略 文書やデータの意味や構造を記述するためのマークアップ言語の一つ(読みやすさが利点) XMLはユーザが独自のタグを指定できる XMLはソフトウェア間での受け渡しデータの形式に用いられたり、データ保存のためのファイルの保存方法に用いられている 参照:IT用語辞典「XML」 + 11月12日の岡田君(3年)の発表

XMLの例 XML宣言 ルートノード 任意のタグ 空要素タグ <?xml version="1.0" encoding="shift_jis"?> <プロ野球> <セリーグ> <team name="読売ジャイアンツ"> <選手> <氏名>坂本 勇人</氏名> <背番号>6</背番号> <打率>.306</打率> <本塁打>18</本塁打> <打点>62</打点> </選手> </team> </セリーグ> <パリーグ /> </プロ野球> XML宣言 ルートノード 任意のタグ 空要素タグ

XMLの作り方 2:ルートノードを記述する 3:任意のタグで囲む 4:必要ならば、タグのグループをタグで囲んで階層構造にする 1:XML宣言を記述する 2:ルートノードを記述する 3:任意のタグで囲む 4:必要ならば、タグのグループをタグで囲んで階層構造にする

タグ付け(XML , XHTML) <パリーグ /> <氏名>坂本 勇人</氏名> 開始タグ 終了タグ <氏名>坂本 勇人</氏名> 開始タグ 終了タグ <パリーグ /> 空要素タグ (最近WEBページに用いられるXHTMLでも使用される)

タグ付け(XML , XHTML) タグ付けのルール 1:開始タグと終了タグをセットで書く 2:空要素タグを作成する <氏名>坂本 勇人</氏名> 開始タグ 終了タグ <パリーグ />

XMLのビュー 作成したXMLをWebブラウザで閲覧すると・・・

このXMLファイルの構成 以下のような階層構造になっている このデータの場合、4段階のタグによる階層構造になっている。そして、末端のタグにそれぞれ詳細なデータが格納されている。

課題1 以下の図の関係を持ったXMLファイルを作成する

JavaScriptの概要

JavaScriptとは? それまで静的だったWEBサイトに、動きや対話性を付加することを目的に開発された Sun Microsystems社とNetscape Communications社が開発 それまで静的だったWEBサイトに、動きや対話性を付加することを目的に開発された Sun社のJava言語に似た記法を用いることが名称の由来だが、直接の互換性は無い。 (インドとインドネシア) 独自の拡張も行われている(Microsoft社の「JScript」、Macromedia社の「ActionScript」) 参照:Wikipedia 「JavaScript」

他言語との関連(代表例) HTML + JavaScript (HTML) + XML + JavaScript ・・・Webページの要素に手を加える、新しくHTML内の要素を加える (HTML) + XML + JavaScript ・・・Web上でアプリケーションからのデータの入出力を行う一例。(もちろんデータの保存・保管がメインになるシステムならばデータベースを用いる)

他言語との関連(代表例) Ajax (JavaScript + XML) 余談:Ajaxはここ数年で大きく流行った技術だけど、その影響でJavaScriptとAjaxがごっちゃになってる様子がある・・・(私は最初は違う言語だと思ってました) ・・・来週のレクチャーのテーマ 参照:Wikipedia 「JavaScript」

JavaScriptの歴史 1995年、サン・マイクロシステムズのJavaが大きな注目を浴びる。 ネットスケープコミュニケーションズのブレンダン・アイク氏が開発し、Netscape Navigator2.0で実装される(ブレンダン・アイク氏は現在Mozilla Corporation最高技術責任者) 1995年、サン・マイクロシステムズのJavaが大きな注目を浴びる。 当時、サン・マイクロシステムズとの技術提携があったので、名前をJavaScriptに変更した

JavaScriptの歴史 2000年以降、Webブラウザ間の互換性が発達したことで、GoogleやAmazonがJavaScriptを積極的に採用する。 2005年、JavaScriptの非同期通信技術に、Ajaxと名前がついて以降、「Googleマップ」に代表されるAjaxを用いた技術が増える (それまでは、意図的にJavaScript機能をoffにするユーザもいるほど好まれていなかった) (;′・ω・)

HTMLとは? Hyper Text Markup Language。 HTMLの知識をちょっと確認

JavaScriptの技術

JavaScriptの宣言方法 scriptタグを書き(JavaScriptの書き始め)、その中で処理を行う。 <script language=“JavaScript”> ・・・処理内容・・・ </script> scriptタグを書き(JavaScriptの書き始め)、その中で処理を行う。 head(ヘッダ部)、body(ボディ部)のいずれでも宣言可能 基本的にヘッダ部で宣言することが多い

JavaScriptの宣言方法 JavaScriptはHTMLファイル内で定義するほかに、JavaScript部分だけを独立させたjsファイルとして定義することも可能。 jsファイルは、HTMLファイルの<script>タグにファイル名を属性として定義して読み込む(属性については後半のスライドで) 例:<script language=“JavaScript” src=“script.js”>

JavaScriptの基本知識 ここからは、JavaScriptの処理内でのルールについて紹介

JavaScriptの基本知識 変数定義 <script language=“JavaScript”> var str1 ; var num1 = 50 ; var str2 = “ラシキアゼミ” ; var num2 = num1 + 100 ;

JavaScriptの基本知識 <script language=“JavaScript”> var str1 ; var num1 = 50 ; var str2 = “ラシキアゼミ” ; var num2 = num1 + 100 ; var 変数名 で宣言(varキーワードを用いる) 代入したデータに合わせて、変数の型を自動で変更することが可能 大体の場所で変数の定義が可能

JavaScriptの基本知識 データ型 変数の型は自動変換されるため、考える機会が少ない。 srtring :文字列のデータ型。” ”(ダブルクォーテー ション)や’ ’(シングルクォーテーション)で囲 むと、string型として定義される numeric :数値を扱うデータ型(他言語のint , float) boolean :true か falseを扱う論理データ型

JavaScriptの基本知識 基本的には、Arrayコンストラクタを用いる 例: 配列 var Week = new Array() ; Week[0] = “Sunday” ; Week[1] = “Monday” ;

JavaScriptの基本知識 配列 例: var customer = new Array() ;

JavaScriptの基本知識 コメント var customer = new Array() ; customer[1] = “Age 22” ; // 年齢 /* この後、出力関数の処理に移行 */ //:その行の間 /*と*/:その記号で挟まれた範囲

JavaScriptの基本知識 データ型(2) falseと扱われるデータ 以下のデータは if文などでfalse(偽)として扱われる。JavaScriptではよく出てくる言葉なので注意。 null(定義されたが、まだ値が代入されていない) NaN(Not a Numberを意味する) undefined(定義はされたが、まだ初期化されていない状態)

JavaScriptの基本知識 演算子 + - * / の四則演算 % (余りを求める) , ++ (1増やす) , + - * / の四則演算 % (余りを求める) , ++ (1増やす) , -b (変数 b の符号を反転させる)

JavaScriptの基本知識 演算子 < > <= >= (比較演算子) < > <= >=  (比較演算子) &&(and) ||(or)  (論理演算子) !boo (boolean型変数booのtrueとfalseを反転)

JavaScriptの基本知識 分岐構造 If ~ else 文は、CやJavaと変わらない if( 条件式 ){ 処理 }else if( 条件式 ){ }else{ } var a = 3 , b = 5 , str ; if(a > b){ str = “aが大きい” ; }else if(a < b){ str = “bが大きい” ; }else{ str = “イーブン?” ; } If ~ else 文は、CやJavaと変わらない

JavaScriptの基本操作 for( 初期処理式 ; 条件式 ; 再処理式 ) var a = 0 ; 反復構造 for( 初期処理式 ; 条件式 ; 再処理式 ) var a = 0 ; for(var i = 1 ; i <= 10 ; i++ ){ a += i ; } JavaやC++のように、初期式内で変数を宣言することが可能

JavaScriptの基本操作 funcion kannsuu1(str){ document.write(str); // 出力メソッド 関数の定義 関数名 funcion kannsuu1(str){ document.write(str); // 出力メソッド } 引数(型の指定はいらない) function キーワード もちろん、返り値(return)も返せる(ただし、それを受け取る変数を定義しておく事) 型指定は気にしなくてOK

JavaScriptの基本操作 関数の呼び出し(JavaScript内から) <script language=“JavaScript”> var str = “ラシキアゼミ” kannsuu1(str); // 関数の呼び出し </script> ・・・関数内での呼び出しは、C言語などと大差ない。

JavaScriptの基本操作 関数の呼び出し(HTMLから) ※イベントの設定

JavaScriptの基本操作 関数の呼び出し(HTMLから) ※イベントの設定 作成したボタンがクリックされたら(onClick) kannsuu1というコールバック関数を呼び出す <input type=“button” onClick=“kannsuu1()”>

JavaScriptの基本操作 関数の呼び出し(HTMLから) ※イベントの設定 注意点 <input type=“button” onClick=“kannsuu1()”> 注意点 HTML部には変数が存在しないため、HTMLから呼び出す関数の引数に「変数」を設定することはできない。 ※ただし、単独の値(文字列、数値)やHTMLで作成したオブジェクト(テキストフォームなど)は、引数に設定できる。

JavaScriptの基本操作 属性の設定(後述) <input type=“button” onClick=“kannsuu1()”> 属性の設定(後述) ・・・今回のイベントの登録など、HTMLの要素に属性を設定することはJavaScriptにおいて、非常に重要。 その役割は、もう少し後のスライドで述べる。

JavaScriptの基本知識 ローカル変数とグローバル変数 関数内で宣言した変数はローカル変数に(関数内でのみ有効) <script language=“JavaScript”> var num1 = 0 ; var num2 = 0 ; myfunc() ; num1++; num2++; function myfunc(){ var num1 = 100 ; num1++ ; num2++ ; } </script> 関数内で宣言した変数はローカル変数に(関数内でのみ有効) 関数外で宣言した変数はグローバル変数に(<script>タグ内で有効)

JavaScriptの基本知識 ローカル変数とグローバル変数 この段階で、 num1 の値は 1 num2 の値は 2 である。 <script language=“JavaScript”> var num1 = 0 ; var num2 = 0 ; myfunc() ; num1++; num2++; function myfunc(){ var num1 = 100 ; num1++ ; num2++ ; } </script> この段階で、 num1 の値は 1 num2 の値は 2 である。 (関数内のnum1++は、関数内のローカル変数num1に適応され、グローバル変数num1には適応されていない)

JavaScriptの基本知識 ローカル変数とグローバル変数 ※注意※ <script language=“JavaScript”> var num1 = 0 ; var num2 = 0 ; myfunc() ; num1++; num2++; function myfunc(){ var num1 = 100 ; num1++ ; num2++ ; } </script> ※注意※ 今回は説明のために用いたが、関数の内外で同じ名前の変数を定義することは、エラーの原因となるので、絶対に避けること。

デバッグ方法(Firefox) この処理を行う関数をボタンから呼び出す。 スペルミスに気付かずに、実行したとする。 例えば…(一見出力文に見えるが・・・) doccument.write("Hello World!") ; この処理を行う関数をボタンから呼び出す。 スペルミスに気付かずに、実行したとする。 (正しくは、document.write)

デバッグ方法(Firefox) エラーコンソールを上のメニューバーから選択 (「ツール」→「エラーコンソール」)

デバッグ方法(Firefox) エラーコンソールウインドウが出現 この表示がエラー内容 (おい、doccumentなんて言葉JavaScriptでは定義されてねぇぞ! ってメッセージ)

デバッグ方法(IE) 「ツール」→「インターネットオプション」を選択すると、「インターネットオプション」ダイアログが出現する。

デバッグ方法(IE) その中から、「ブラウズ」の項目にある「スクリプトエラーごとに通知を表示する」のチェックがオンになっていれば、JavaScriptのエラーがあるときにダイアログボックスが表示される ※エラー1つに対してダイアログボックス1つ表示 48

HTMLの属性の設定 関数の呼び出しの時に紹介した、HTMLで作成したオブジェクトにイベントに対するコールバック関数を登録するといった、特定のHTML要素に属性を追加する操作がJavaScriptでは重要になってくる 属性 例: <input type=“text” id=“text1” name=“text1” value=“初期データ”> <input type=“button” id=“btn1” name=“btn1” onClick=“calculate()”>

HTMLの属性の設定 <input type=“text” id=“text1” name=“text1” value=“初期データ”> テキストボックスを指定 idと要素名を決める デフォルトでテキストボックスに入っているデータ(テキストボックスの場合)。value属性を定義すると、テキストフォームの初期値になる。

HTMLの属性の設定 <input type=“button” id=“btn1” name=“btn1” value=“3+5の計算” onClick=“calculate()”> ボタンを指定 idと要素名を決める ボタンのラベルを指定 (value属性は、フォームによって効果が異なる) onClickで、クリックしたときに呼び出される関数を指定

HTMLの属性の設定 セレクトボックス <select id=“sel1” name=“sel1” size=“1”> <option value=“uno”>1</option> <option value=“dos”>2</option> <option value=“tres”>3</option> </select>

HTMLの属性の設定 セレクトボックス <select id=“sel1” name=“sel1” size=“1”> <option value=“uno”>1</option> <option value=“dos”>2</option> <option value=“tres”>3</option> </select> セレクトボックスは、selectタグと、セレクトボックスの要素を指すoptionタグの階層構造になる。この場合、idや名前を設定するのは<select>タグ、value属性はoptionタグで定義。

属性の設定を行う理由 JavaScriptでは、HTMLのオブジェクトなど、Webページを構成するための要素を取得したい・・・ →  DOM操作がある。 idやname属性は、要素にアクセスするために用いる。 また、value属性は、各オブジェクト(要素)の値を取得するために必要な属性である。 (※value属性は、DOM操作に必要なオブジェクトと必要でないオブジェクトがある。)

DOM ・・・Document Object Model の略。 文書オブジェクトモデルともいう。 Webページの内容(文章、画像、音声など)及びそれらの配置、スタイルをオブジェクトとして扱い、それらをスクリプト言語を使って制御するための取り決め。 また、その制御をおこなうためのAPI(Application programming Interface)。

HTMLのDOM構造(図) ボタンにアクセス テキストフォームにアクセス 参照:http://www.scollabo.com/banban/java/jvp_01.html

formオブジェクトの設定 一般的に、DOM操作を行うためには、テキストフォームやボタンをまとめるフォーム(form)を定義する必要がある <form id=“myForm” name=“myForm”> <input type=“text” id=“text1” name=“text1” value=“初期データ”> < input type=“button” id=“btn1” name=“btn1” onClick=“kannsuu1()”> </form>

HTML要素にアクセスする(1) 初期データ var dom = document.myForm.text1.value ; テキストフォームに入っているデータを取得し、変数に代入する。 (ただし、数字が入っていても取得するのは文字列) 初期データ

ちなみに、DOM操作で要素にアクセスする場合、一番上の階層のwindowオブジェクトは省略することができる。

セレクトボックスにアクセスする場合、value属性の値は1つ下の階層のoptionオブジェクトから取り出す

HTML要素にアクセスする(2) セレクトボックスで選択されている要素の値を取得するには… <form id=“myForm” name=“myForm”> <select id=“sel1” name=“sel1” size=“1”> <option value=“uno”>1</option> <option value=“dos”>2</option> <option value=“tres”>3</option> </select> </form>

HTML要素にアクセスする(2) セレクトボックスで選択されている要素の値を取得するには… セレクトボックスで現在選択されているoption要素の配列アドレスを取得する 取得した配列アドレスをもとに、セレクトボックス内のoptionオブジェクトのvalue属性にアクセスする。 または、optionタグに格納されている値を取り出す

HTML要素にアクセスする(2) ① var dom = document.myForm.sel1.selectedIndex ; セレクトボックスで選択されている要素の値を取得するには… ① var dom = document.myForm.sel1.selectedIndex ; ・・・現在選択されているセレクトボックスのoption要素の配列アドレスを返す (上から2番目が選択されていたら「1」を返す)

HTML要素にアクセスする(2) ② var str1 = document.myForm.sel1. セレクトボックスで選択されている要素の値(value属性)を取得するには… ② var str1 = document.myForm.sel1. options[dom].value ; // dom・・・選択されている配列アドレス ・・・セレクトボックスで現在選択されている値を返す (この場合は「dos」という文字列)

HTML要素にアクセスする(2) var str1 = document.myForm.sel1. options[dom].value ; dos (2が入ったoption要素のvalue属性)

HTML要素にアクセスする(2) ② セレクトボックスで選択されているoptionタグに格納されている値を取得するには・・・ 2 (2が入ったoption要素のvalue属性) optionタグに入っているデータ(この場合2)を取得する場合 var str1 = document.myForm.sel1. options[選択されている配列アドレス].text ②

上位オブジェクト 上位オブジェクトの変更 これまでは、Webページ内の要素を扱うdocumentオブジェクトを編集してきたが、documentオブジェクトと同じ階層には、他のオブジェクトも存在する

上位オブジェクト ここに、navigatorオブジェクトもある

上位オブジェクト locationオブジェクト location.href = ページのURL 上位オブジェクトの例 locationオブジェクト ・・・現在表示しているアドレス(URL)に関する情報を持つオブジェクト。 location.href = ページのURL ・・・現在表示しているページを、指定のURLに変える。(ページジャンプの効果)

JavaScriptの基本操作 出力関数 document.write(str) 引数:出力したいデータを格納した変数 機能:引数で指定した変数と文字列を、HTMLの要素と し て出力する。タグも書き込み可能。 出力場所は、関数を定義した場所による (※ただし、それまでに書かれているHTML要素は 上書きにより消えてしまいます)

ちなみに次回は… Ajaxの技術を扱うために必要な概念のお話 JavaScriptでXMLデータを読み込む・データを取り出す DOM操作の関数を用いて、より動的なWebを実現する

課題1 以下の図の関係を持ったXMLファイルを作成する

課題1 構造の説明 「中京大学」が最上位の要素。 1つ下の階層に「情報理工学部」 「情報理工学部」の下に「情報システム工学科」、「情報知能学科」。「情報システム工学科」の下に3つ、 「情報知能学科」の下に2つゼミが所属 それぞれのゼミは「教授」、「人数」、「研究分野」を子要素に持ち、その3つの要素は値を格納している

課題2 JavaScriptで様々な要素にアクセスし、表示・変更する(様々なオブジェクトにアクセスする) ブラウザごとに違うメッセージを表示させる (IEとFireFoxに対応させてください) 現在表示中のページのURLを出力させる 背景色を変化させる(目に優しい色にしてね;)

課題2(補足) ブラウザごとに違うメッセージを表示させる ・ ブラウザによって違う値を返すオブジェクトのプロパ ティを用いる ・ ブラウザによって違う値を返すオブジェクトのプロパ ティを用いる ・ その値をindexOf関数を用いて、文字列照合する ・ 今回はIEとFireFoxでチェックすればOK

課題2(補足) 背景色はdocumentオブジェクト、それ以外は、紹介した上位オブジェクトのクラスを用いて実現できます。 location.○○○ = ~~~ などなど…

課題3 (1) 四則計算プログラムを作成 値の入力、四則演算のうちどの計算を行うか、はユーザが決める事が出来る 課題3では、2つの値を計算するだけでOK。もちろんこれを改良して、次の自由課題を取り組んでもOK

課題3 (1)の流れ 計算する値1、値2を取得(自由だけど、スライドで扱ったフォームがやりやすいかも) どの四則演算を行うかを判断し、分岐処理 (これに合ったフォームがあったよね) 分岐先でそれぞれ計算を行う 計算結果を出力

課題3 補足 ・・・それらを数値として扱いたい場合、 parseInt()関数で数値に変換する。 オブジェクトから取り出したvalue属性の値やタグに格納されている値をJavaScriptで取り出すと、それらはすべて文字列データ ・・・それらを数値として扱いたい場合、 parseInt()関数で数値に変換する。 parseInt()関数の詳細は調べてみてください。

課題3 (2) リンクボックスを作る (ページをジャンプさせる処理は、スライド中にもあるし、それ以外にも方法がある) ボタンを押したらページがジャンプしますという方法は×。例のようにセレクトボックスを切り換えたときに起動するイベントがある。 どういう形でジャンプするかは自由 (ページが切り替わっても、新しくウインドウが開いてもOK)

課題4(2回を通しての共通課題) 評価ポイント JavaScriptで自由にプログラムを作ってね (中間経過として提出してくれたら加点します) 評価ポイント JavaScriptの機能が充実(HTMLばかり増やしすぎないでね^^;) 機能(意味)を持ったプログラム コメントで説明が書いてある(これに関しては他の課題も一緒。その処理が何をしているのかをコメントで書く癖をつける)

参考資料 参考サイト JavaScriptプログラミング入門 (大津 真 著 、オーム社 発行) (代表的なサイト。これ以外にも、状況に応じて検索する必要がある。なにせHTMLも扱うからね) ・ とほほのJavaScriptリファレンス http://www.tohoho-web.com/js/index.htm ・ Web of begginer   JavaScript入門 http://www.scollabo.com/banban/java/index.html