セレクタ
基本は$('要素')
- html要素(p h1 ul ...) ⇨ そのまま
【html部】 <p>jQueryの練習</p> 【jQuery部】 // p要素を赤文字にする $('p').css('color','red');
- id ⇨ #'id名'
【html部】 <p id="main">jQueryの練習</p> 【jQuery部】 // idがmainの要素を赤文字にする $('#main').css('color','red');
- class ⇨ .'class名'
【html部】 <p class="title">jQueryの練習</p> 【jQuery部】 // classがtitleの要素を赤文字にする $('.title').css('color','red');
- その他要素の指定
- > ⇨ 直下の子要素
- (空白) ⇨ それ以下の要素
- , ⇨ 複数の要素
- + ⇨ 隣接する要素
// main直下のitemクラスを赤字にする $('#main>.item').css('color','red'); // main以下の全itemクラスを赤字にする $('#main .item').css('color','red'); // p要素とitemクラスを赤字にする $('p, .item').css('color','red'); // itemクラスに隣接するitemクラスを赤字にする $('.item + .item').css('color','red');
// sub直下で2番目のli要素を赤字にする $('#sub>li:eq(2)').css('color','red'); // sub直下で2番目以降のli要素を赤字にする $('#sub>li:gt(1)').css('color','red'); // sub直下で偶数番目のli要素を赤字にする $('#sub>li:even').css('color','red'); // sub直下のli要素で値に2を含むものを赤字にする $('#sub>li:contains(2)').css('color','red'); // sub直下の最初のli要素を赤字にする $('#sub>li:first').css('color','red');
- メソッドを利用した要素指定
- parent(), children()
- next(), prev()
- siblings()
// subとsubの親要素を赤字にする $('#sub').parent().css('color','red'); // sub直下で2番目の次のli要素を赤字にする $('#sub > li:eq(2)').next().css('color','red'); // sub直下で2番目のli要素の兄弟要素を赤字にする $('#sub > li:eq(2)').siblings().css('color','red');
- 属性セレクタ
- =, !=, *=(〜を含む), ^=(〜で始まる), $=(〜で終わる)
// hrefが"http://google.com"の背景色を赤字にする $('a[href="http://google.com"]').css('background','red'); // hrefが"http://google.com"以外の背景色を赤字にする $('a[href="http://google.com"]').css('background','red');
*1:要素のindexは0から