関数とは †関数の基本形 function 関数名() {
/* プログラム */
}
「関数名」をプログラムに書くと、関数が実行される。 function myFunc(arg) {
alert(arg);
}
myFunc("hoge"); // alert で「hoge」と表示される
myFunc("hogehoge"); // alert で「hogehoge」と表示される
関数という処理の塊(プログラム群)に、処理を依頼しているイメージ 同じ処理をするとき関数にしておけば、同じプログラムを書かなくて良いのです。 function myFunc( a, b ) {
var d = a * b;
return d;
}
var sum = myFunc( 34, 29 );
alert(sum);
return という命令で関数を呼び出した元に結果のデータを送ることができます。 関数という処理の塊(プログラム群)に、処理を依頼しているイメージ
グローバル変数とローカル変数 †function myFunc() {
var d = "かんすうです!";
alert( "関数内表示:" + d );
}
myFunc(); // 関数実行
関数内で作った変数(箱)は、関数が終わったら消滅します。 function myFunc() {
var d = "かんすうです!";
alert( "関数内表示:" + d );
}
myFunc(); // 関数実行
alert("d変数は " + d );
グローバル変数はどこからでも使えるよ(消滅しないよ) var g = "ぐろーばるです!";
function myFunc() {
var d = "かんすうです!";
alert( "関数内表示g:" + g );
alert( "関数内表示d:" + d );
}
myFunc(); // 関数実行
alert( "表示g:" + g );
alert( "表示d:" + d );
イベントドリブン †(3)jQueryイベント処理 †要素がブラウザに読み込まれたら実行 †$("要素").ready(関数);
DOM読み込みが完了し、ページ作成が作成されたときのイベント †$(document).ready(関数); ↓省略 $(関数);
jQueryのイベント設定、ホームページ表示直前に実行したいプログラムは、 <script language="JavaScript">
<!--
$(function(){
// ★ 必ずこの位置にjQueryイベント設定を書きます!
});
-->
</script>
下記のクリックイベントの場合なら、 <script language="JavaScript">
<!--
$(function(){
$("#hoge").click(function(ev){
/* クリック時の実行内容 */
});
});
-->
</script>
要素上でクリックされたら実行 †$("要素").click(関数);
要素上でダブルクリックされたら実行 †$("要素").dblclick(関数);
要素上でマウスが動かされたら実行 †$("要素").mousemove(関数);
要素上にマウスカーソルが入ってきたら実行 †$("要素").mouseover(関数);
クリックされるごとに関数1、関数2を交互に実行 †$("要素").toggle(関数1, 関数2);
<select>で選択肢が変更された時や、フォームに入力された内容が変更されたら実行 †$("要素").change(関数);
要素中のテキスト(文字列)が選択されたら実行 †$("要素").select(関数);
送信ボタンがクリックされたら実行 †
$("要素").submit(関数);
jQuery イベント †http://semooh.jp/jquery/api/events/ jQueryイベント処理のイメージ †要素に対してイベントを設定する †$("#hoge").click(function(ev){
$("#top").css("color","blue");
});
1つの要素に対してたくさんイベントを設定できる †$("#hoge").click(function(ev){
alert("クリックされた");
});
$("#hoge").mouseover(function(ev){
alert("まうすおーばー");
});
(演習1)イベントを使ってみよう †(1)HTMLで下記の要素を持つページを作ってみよう
(2)イベントを設定しよう
(3)違うイベントを設定しよう
(4)イベントを追加しよう
(5)toggleイベントを使ってみよう
(演習2)ゲームを作ってみよう †(1)自分のカード(手前のカード)のどれかをクリックしたら、クリックしたカード以外を消しましょう (2)自分のカード(手前のカード)のどれかをクリックしたら、ランダムで相手のカードを決定して決定したカード以外を消しましょう ランダム処理 †
var rnd = Math.floor(Math.random()*3);
var rnd = Math.floor(Math.random()*5+1); 宿題 †作ったゲームを拡張しよう。
余裕がある人は †
|