jQueryことはじめ。


jQueryことはじめ。たまに仕事で使ってたけどちゃんとわかってないのでやってみる。
今後結構使うことになりそうなので今のうちに。
特に今回はたいしたことじゃない。。
結局セレクタを使いこなすっていうのが大事。

セレクター

要素を指定するための。
「操作が発生した要素」や「変更したい要素」を指定するのが「セレクター」

$("セレクター")

セレクターにはCSSとほぼ同様なものが使える。

$("#target img")

上記であればid属性が”target”の要素内にあるimg要素を指定できる。

jQueryで利用できる主なセレクター


タイプ 名称 書式 指定対象
CSSでよく利用されるセレクター 要素セレクター $(要素名) 特定のHTML要素
IDセレクター $(#ID名) 特定のid属性を持つ要素
クラスセレクター $(.クラス名) 特定のclass属性を持つ要素
子孫セレクター $(要素1 要素2) 特定の要素の内側にある要素
ユニバーサルセレクター $(*) すべての要素
グループセレクター $(セレクター1) セレクター2
CSS2のセレクター 子セレクター $(親要素名 > 子要素名) 特定の要素の直下の子要素
隣接セレクター $(要素1 + 要素2) 特定の要素の次の要素
first-child擬似クラス $(要素:first-child) 同一の親要素内の最初の要素
CSS3のセレクター 間接セレクター $(要素1 ~ 要素2) 特定の要素の後に出現する要素
否定擬似クラス $(要素1:not(要素2)) 特定の要素内で指定した要素以外の要素
empty擬似クラス $(要素:empty”)” 子要素やテキストを含まない要素
nth-child擬似クラス $(要素:nth-child(番号)) 特定の要素内の指定した番号の要素
last-child擬似クラス $(要素:last-child) 特定の要素内の最後の要素
only-child擬似クラス $(要素:only-child) 指定した要素が1つだけ含まれる特定の要素
CSSの属性セレクター [attribute] $([属性名]) 特定の属性を持つ要素
[attribute=’value’] $([属性名=’値’]) 特定の属性が指定した値を持つ要素
[attribute!=’value’] $(要素名[属性名!=’値’]) 特定の属性が指定した値を持たない要素
[attribute^=’value’] $([属性名^=’値’]) 特定の属性が特定した値で始まっている要素
[attribute$=’value’] $([属性名$=’値’]) 特定の属性が特定した値で終わっている要素
[attribute*=’value’] $([属性名*=’値’]) 特定の属性が特定した値を含んでいる要素
[attributeFilter1][attributeFilter2] $([属性セレクター1][属性セレクター2]) 複数の属性セレクターに該当する要素
jQueryの独自フィルター firstフィルター $(要素:first) 同一の親要素内の最初の要素
lastフィルター $(要素:last) 指定した要素の最後の要素
evenフィルター $(要素:even) 指定した要素の偶数番目の要素
oddフィルター $(要素:odd) 指定した要素の奇数番目の要素
eqフィルター $(要素:eq(番号)) 指定した番号の要素
gtフィルター $(要素:gt(番号)) 指定した番号より後の要素
ltフィルター $(要素:lt(番号)) 指定した番号より前の要素
headerフィルター $(要素:header) h1~h6までのheader要素
containsフィルター $(要素:contains(文字列)) 特定の文字列が含まれている要素
hasフィルター $(要素1:has(要素2)) 特定の要素が含まれている要素
parentフィルター $(要素:parent) 子要素やテキストを含む要素
フォームフィルター :inputフィルター $(要素:input) input要素/textarea要素/select要素/button要素
:textフィルター $(要素:text) 1行テキスト入力フォーム(type属性がtextのinput要素)
:passwordフィルター $(要素:password) パスワード入力フォーム(type属性がpassowordのinput要素)
:radioフィルター $(要素:radio) ラジオボタン(type属性がradioのinput要素)
:checkboxフィルター $(要素:checkbox) チェックボックス(type属性がcheckboxのinput要素)
:submitフィルター $(要素:submit) 送信ボタン(type属性がsubmit/imagesのinput要素)
:imageフィルター $(要素:image) イメージボタン(type属性がimageのinput要素)
:resetフィルター $(要素:reset) リセットボタン(type属性がresetのinput要素)
:buttonフィルター $(要素:button) ボタン(button要素)
:fileフィルター $(要素:file) ファイル選択フォーム(type属性がfileのinput要素)
:checkedフィルター $(要素:checked) ラジオボタン、チェックボックスでチェックが入っている要素
:selectedフィルター $(要素:selected) セレクトボックスで選択されている要素

HTML/CSSを操作する

jQueryでHTML/CSSを操作するには、次のような書式で記述する。

$("セレクター").jQueryの命令

イベント発生時に行いたい処理も以下のような書式で記述する。

$("セレクター").イベント(function(){
イベント発生時の処理
});

サンプルコード

        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>

        <script type="text/javascript">
            $(function(){
                    // 文字変更と色変更
                    $("p#first").text("jQueryで変えちゃた。");
                    $("p").css("color", "red");

                    // 画像の切り替え
                    $("button").click(function(){
                            $("img").attr("src", "sea.jpg");
                        });
            })
        </script>
        <p id="first">変更前</p>

        <button>画像を変更</button>
        <p><img src="flower.jpg" alt="" /></p>

jQueryで利用できる主なHTML/CSSを操作する命令

命令名・書式 意味
テキストの変更と取得 text(変更後のテキスト) テキストを変更する
text() テキストを取得する
HTMLの変更と取得 html(変更後のHTML) HTMLを変更する
html() HTMLを取得する
HTMLの挿入 prepend(挿入するHTML) 要素内の先頭にHTMLを挿入する
append(挿入するHTML) 要素内の最後にHTMLを挿入する
before(挿入するHTML) 要素の前にHTMLを挿入する
after(挿入するHTML) 要素の後にHTMLを挿入する
HTMLの移動 prependTo(移動先のセレクター) 他の要素内の先頭に要素を移動する
appendTo(移動先のセレクター) 他の要素内の最後に要素を移動する
insertBefore(移動先のセレクター) 他の要素の前に要素を移動する
insertAfter(移動先のセレクター) 他の要素の後に要素を移動する
他の要素で包む wrap(<要素名></要素名>) 要素を他の要素で包む
wrarpAll(<要素名></要素名>) 要素をまとめて他の要素で包む
wrapInner(<要素名></要素名>) 子要素/テキストを他の要素で包む
要素の置き換え replaceWith(置換後の要素) 要素を他の要素に置き換える
要素の削除 remove() 要素を削除する
属性値の変更と取得 attr(属性名, 属性値) 指定した属性の値を変更する
attr(属性名) 指定した属性の値を取得する
removeAttr(属性名) 指定した属性を削除する
class属性の追加と削除 addClass(class属性値) class属性を追加する
removeClass(class属性値) class属性を削除する
CSSの制御 css(プロパティ名,値) 指定したCSSプロパティの値を設定する
css(プロパティ名) 指定したCSSプロパティの値を取得する
フォーム部品の操作 val(”入力値”) フォームの入力値(val ue属性の値)を変更する
val() フォームの入力値(val ue属性の値)を取得する

アニメーションの例

ノーマルアニメーション

$("セレクター").show(スピード);
$("セレクター").hide(スピード);

スライドアニメーション

$("セレクター").slideDown(スピード);
$("セレクター").slideUp(スピード);

フェードアニメーション

$("セレクター").fadeIn(スピード);
$("セレクター").fadeOut(スピード);

サンプルCSS

    div{
        width:300px;
        height:300px;
        background:red;
        display:none;
    }

サンプルjs

    $(function(){
            $("button").click(function(){
                    $("div").show("slow");
                });
    })

サンプルHTML

<button>表示</button>
<div></div>

とりあえずここまで。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です