自分用チートシートです。
毎度過去のプロジェクトから探してコピペするのが面倒なので、ここにまとめます。
よく使うもの中心にまとめてます。随時更新します。
###◆表示と同時に発動系
####htmlの読み込みが終わった時点で発動
特別な理由がない限りこっち
$(function(){
//処理
});
####画像やcssなどもすべて読み込み終わってから発動
$(window).load(function() {
//処理
});
####画面リサイズ
$(window).resize(function() {
//処理
});
###◆マウス動作系
####クリック
$(document).on('click', 'セレクタ', function() {
//処理
});
####ホバー
$(document).on({
'mouseenter': function(){
//ホバー時の処理
},
"mouseleave": function(){
//マウスを離した時の処理
}
}, 'セレクタ');
###◆input系
####inputの内容が更新された時
$(document).on('change','セレクタ', function () {
//処理
});
####フォーカスした時
//子要素に直接設定したいとき
$(document).on('focus','セレクタ', function () {
//処理
});
//親要素に設定して子要素の反応をまるっと受け取りたい時
$(document).on('focusin','セレクタ', function () {
//処理
});
####フォーカスが外れた時
//子要素に直接設定したいとき
$(document).on('blur','セレクタ', function () {
//処理
});
//親要素に設定して子要素の反応をまるっと受け取りたい時
$(document).on('focusout','セレクタ', function () {
//処理
});
###◆タイピング系
####キーが「押された」時
$(document).on('keydown', 'セレクタ', function (){
//処理
});
####キーが「離された」時
$(document).on('keyup', 'セレクタ', function (){
//処理
});
####「特定のキー」が「押された」時
$(document).on('keydown', 'セレクタ', function (e){
if (e.which == 押されたキーのコード) {
//処理
};
});
//よく使うキー
//enter -> 13
//スペース -> 32
キーコードはこちらを参考にするといい感じ
[JavaScript] キーコードの一覧 - コピペで使える JavaScript逆引きリファレンス
###◆その他
####cssアニメーションが終了した時
//animation(keyframe)の場合
$(document).on('animationend webkitAnimationEnd','セレクタ', function(){
// 処理
});
//transitionの場合
$(document).on('transitionend webkitTransitionEnd','セレクタ', function(){
// 処理
});
###◆共通の注意点
$(document).on~で記述するイベントハンドラは、動的に追加された要素についても発火するが、$(document)の部分で指定する「イベントの検知範囲」は静的である必要がある。
「document(ページ全体)」としておくのが一番確実ではあるが、サイトの軽量化・高速化を心がけるなら「最小単位のユニークで静的な先祖セレクタ」を指定するのがよいようだ。
※このページでは簡略化してすべて「document」と記述する