このサイトは、主にjQueryに関連する内容を淡々と書きとめたものです。過度な期待はしないでください。
あと、ブラウザはChromeやFirefoxの最新版をお勧めいたします。

  • コンテンツを追加する

    IDがlistのUL要素内の末尾にLI要素を追加する。

    $('ul#list').append( '<li>アイテム3</li>' );
    
    <!-- html部分 -->
    <ul>
    <li>アイテム1</li>
    <li>アイテム2</li>
    </ul>
    

    機能は、$('ul#list').html( $('ul#list').html()+'<li>アイテム3</li>' );と同じ。

  • jQuery UIのdraggableを適用する要素の移動方向を水平方向に限定する

    IDがitemの要素にdraggableを適用し、ドラッグできるようにする。

    $(document).ready( function () {
    	$( '#item' ).draggable( { axis: 'x' } );
    } );
    

    axisプロパティはデフォルトでfalseになっており、初期化時に’x'を指定すると水平方向のみに移動可能になる。ちなみに’y'を指定すると垂直方向のみが移動可能になる。

  • jQuery UIのdraggableを使う

    IDがitemの要素にdraggableを適用し、ドラッグできるようにする。

    $(document).ready( function () {
    	$( '#item' ).draggable();
    } );
    

    jQueryのほか、jQuery UI Core、jQuery UI Widget、UI Mouseが必要で、初期化時に適用したい任意の要素に対してdraggable関数を呼び出す。

  • 8秒毎に何かする

    1秒後に何かする。

    var timer_id = setInterval( function () {
    	// ここに1秒後の処理を
    	} , 8000 );
    
    // 繰り返しを中止する場合
    clearInterval( timer_id );
    

    第2パラメータには実行までの時間を何ミリ秒単位(1秒後なら1000)を指定する。setTimeout関数と異なり、第1パラメータの関数は指定された間隔で繰り返し実行される。なお、繰り返しを中止する場合は、setInterval関数の戻り値を指定してclearInterval関数を呼び出す。

  • 浮動小数点数の小数点以下を繰り下げて整数にする

    変数numの小数点以下を繰り下げて整数にする。

    num = Math.floor( num );
    

    変数が正数の場合、浮動小数点以下は切り捨てられる(10.1や10.9は10になる)。変数が負数の場合、浮動小数点以下は切り上げられる(-10.1や-10.9は-11になる)

  • 1秒後に何かする

    1秒後に何かする。

    setTimeout( function () {
    	// ここに1秒後の処理を
    	} , 1000 );
    

    第2パラメータには実行までの時間を何ミリ秒単位(1秒後なら1000)を指定する。setInterval関数と異なり、第1パラメータの関数が実行されるのは一度きり。

  • 次の要素を探す

    ラジオボタンの次のlabel要素のテキストを取得する。

    $( 'input[type="radio"]' ).each( function() {
    	var text = $(this).next( 'label' ).text();
    } );
    

    next関数は現在の要素と同階層の次の要素を検索する。逆に前の要素を検索する場合はprev関数を使用する。

  • ページ内アンカーを取得する

    リクエストURLのページ内アンカーが’#tab1′か調べる。

    if ( location.hash == '#tab1' ) {
    	/* アンカーが'#tab1'の場合の処理を記述する */
    }
    

    locationのhashプロパティには’#'付きでアンカーの値が格納されている。なお、アンカーがない場合は”になる。

  • 文字列の前後にある空白文字を削除(trim)する

    変数valueの値から前後の空白文字を削除する。

    // jQueryの場合
    value = jQuery.trim( value );
    
    // JavaScriptの場合
    value = value.replace( /^\s+|\s+$/g, '' );
    

    jQueryのtrim関数は、PHPのtrim関数と同等である。jQueryを使えない場合は、replace関数で代用できる。

  • 要素のstyle属性を設定する

    IDがfeatureの要素のstyle属性を設定する。

    /* 1つの属性値を設定する */
    $('#feature').css( 'color', '#000000' );
    
    /* 複数の属性値を設定する */
    $('#feature').css( {
    	color: '#000000',
    	background-color: '#FFFFFF'
    } );
    

    attr関数でstyle属性を変更することと同じで、上記であれば$(‘#feature’).attr( ‘style’, ‘color: #000000′ );$(‘#feature’).attr( ‘style’, ‘color: #000000; background-color: #FFFFFF;’ );のように記述できる。

  • チェックボックスのクリック時の対応を指定する

    チェックボックスのクリック時の処理を指定する。

    /* 単独のクリックイベント処理の場合 */
    $( 'input[type="checkbox"]' ).click( function() {
    	// ここに処理内容を記述する
    } );
    
    /* 他のクリックイベント処理へ引き継ぐ場合 */
    $( 'input[type="checkbox"]' ).click( function( e ) {
    	// ここに処理内容を記述する
    	e.preventDefault();
    } );
    

    属性の値を指定して検索する場合は [属性名=属性値] の書式で指定する。onClickイベントの処理はclick関数で対応する関数を指定すればよい。

  • onChangeイベントを処理する

    IDがperfのSELECT要素のonChangeイベントを処理する。

    $( '#perf' ).change( function () {
    	// ここに処理内容を記述
    } );
    

    選択されたOPTION要素(の値)、処理中に $(this).children(':selected').val() を記述する。

  • 別ページへ遷移させる

    ‘index.html’へ遷移させる。

    location.href = 'index.html';
    

    遷移の際、ページの状態を保持するブラウザと保持しないブラウザがあるため、ブラウザのヒストリバックで戻った際の表示内容に差異が生じる。

  • 要素が表示されているか調べる

    IDがcationの要素が表示されているか調べる。

    if ( $( '#cation:visible' ).length != 0 ) {
    	// 表示されている場合の対応をここで
    }

    この例ではIDで指定した要素が存在しない場合も0になるので、その点は注意すること。

  • 要素の高さを取得する

    idがpost-1の要素の高さを取得する。

    var height = $( '#post-1' ).height();
    

    取得できる高さはピクセル値で、上下のpadding分は含まれていない。例えばその要素の高さが50pxでpaddingが10pxの場合は、取得できる高さの値は50となる(jQuery 1.7.1でIE7~9、Chrome 16、Firefox 9、Safari 5.1、Opera 11.60で確認)。なおheight関数は、$( window ).height()と記述することでブラウザの表示領域の高さを、$( 'body' ).height()とすることでドキュメントの高さ(長さ)を取得できる。

  • 要素名を取得する

    redクラスの要素のタグ名を取得する。

    $( '.red' ).each( function () {
    	var tag = $(this).get(0).tagName;
    } )
    

    get(0)でDOMエレメントを取得できる。DOMエレメントのtagNameプロパティの値は英大文字の要素(タグ)名である。

  • JSONテキストをパースする

    変数jsontextの内容をパースしてオブジェクトに変換する。

    try {
    	var jsonobj = jQuery.parseJSON( jsontext );
    } catch (e) {
    	// パースエラー時の対応をここで
    }

    変数の内容が正しいJSON形式でない場合は例外が発生するので、基本的にはcatchすること。

  • ページトップへスクロール

    idがpagetopの要素をクリックすると、ページのトップへスクロールする。

    $('#pagetop').click( function() {
    	$('html,body').animate({'scrollTop':'0px'},'slow');
    	return false;
    } );
    

    html要素はIE7~9、Firefox 9.01、Opera 11.60が動作する(Chrome 16、Safari 5.1はNG)。body要素はChrome 16、Safari 5.1が動作する(IE7~9、Firefox 9.01、Opera 11.60はNG)。このようなことから、htmlとbody要素の両方を指定する必要がある。