jQuery は、HTML ページにおけるイベントに応答する仕立て屋さんです。
Web ページが応答できる様々な訪問者の全アクションはが、イベントと呼ばれます。
イベントは、何かが起こったときの瞬間を表します。
例:
イベントの説明では "fires/fired" という用語がしばしば使われますが、ここでは「発火」と訳すことにします。 例:「キープレスイベントは、キーを押した瞬間に発火する」。
ここに幾つかの一般的な DOM イベントがあります:
マウス イベント | キーボード イベント | フォーム イベント | Document/Window イベント |
---|---|---|---|
click | keypress | submit | load |
dblclick | keydown | change | resize |
mouseenter | keyup | focus | scroll |
mouseleave | blur | unload |
jQuery には、ほとんどの DOM イベントと同じ jQuery メソッドがあります。
ページ上の、全ての段落にクリックイベントを割り当てるには、次のようにします:
$("p").click();
次のステップは、イベントが発火したときにどうするかを定義することです。 イベントに関数を渡さなければなりません:
$("p").click(function(){
// action goes here!!
});
$(document).ready()
$(document).ready() メソッドは、文書が完全にロードされたとき、関数の実行を可能にします。 このイベントは、jQuery 構文 で説明済です。
click()
click() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、HTML 要素をクリックしたときに実行されます:
次の例は、<p> 要素にクリックイベントが発火したときに; 現在の
<p> 要素を非表示にします; と申しています。
dblclick()
dblclick() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、HTML 要素をダブルクリックしたときに実行されます:
mouseenter()
mouseenter() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、マウスポインタが HTML 要素に入ったときに実行されます:
mouseleave()
mouseleave() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、マウスポインタが HTML 要素から出たときに実行されます:
mousedown()
mousedown() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、マウスポインタが HTML 要素上にある間に、左、中央、右マウスボタンを押下したときに実行されます:
mouseup()
mouseup() メソッドは、HTML 要素にイベントハンドラ関数を接続します。
関数は、マウスポインタが HTML 要素上にある間に、左、中央、右マウスボタンを放したときに実行されます:
hover()
hover() メソッドは、mouseenter() と mouseleave() メソッドの 2 つの機能をもっています。
最初の機能は、HTML 要素にマウスが入った時に実行され、もう一つの機能は、 HTML 要素からマウスが出た時に実行されます:
$("#p1").hover(function(){
alert("You entered p1!");
},
function(){
alert("Bye! You now leave p1!");
});
Try it Yourself »
focus()
focus() メソッドは、HTML フォーム・フィールドにイベントハンドラ関数を接続します。
関数は、フォームフィールドがフォーカスを取得したときに実行されます:
blur()
blur() メソッドは、HTML フォーム・フィールドにイベントハンドラ関数を接続します。
関数は、フォームフィールドがフォーカスを失ったときに実行されます:
on() メソッドは、選択した要素に 1 つ以上のイベント・ハンドラを接続します。
<p> 要素に、click イベントを接続します:
<p> 要素に、複数のイベント・ハンドラを接続します:
$("p").on({
mouseenter: function(){
$(this).css("background-color", "lightgray");
},
mouseleave: function(){
$(this).css("background-color", "lightblue");
},
click: function(){
$(this).css("background-color",
"yellow");
}
});
Try it Yourself »
練習問題 1 » 練習問題 2 » 練習問題 3 » 練習問題 4 » 練習問題 5 »
完全な jQuery イベント・リファレンスは、 jQueryのイベント·リファレンスをご覧ください。