基本的なもの。

空とか除外とか。

javascript

//除外
$('li:not(".index")').css('background','red');

//空の場合
$('li:empty').css('border','1px solid red').text('空です');

//空要素以外
$('li:parent').css('border','1px solid red');


順番系。

javascript

//2番目の要素
$("li:eq(2)").css('color','red');
//2番目以降の要素
$("li:gt(2)").css('color','red');


テキストで判定。

javascript

//指定のテキストが含まれるもの
$("li:contains("2番")").css('color','red');


子要素系。

javascript

//spamを子要素に持つdiv
// =>やっぱりこれが一番いいのか?子要素判定の書き方色々あるよね
div:has(span)

//指定した子要素を持つ
$('li:has(span)').css('border','1px solid red');

//指定した要素を「子要素に」1つだけ持つ 結果:4のspan部分だけ赤
$('span:only-child').css('background','red');

//子要素の存在判定。countが0より大きければ存在する。
//全称セレクタの想定してなかった使い方
var count = $("#some_column *").length;

html

<ul id="slowEach">
<li>1</li>
<li></li>
<li class="index"><span>子要素</span><span>子要素</span>3</li>
<li>4 <span>子要素</span></li>
<li>5</li>
<li>6</li>
</ul>
<span>子要素</span>


これは知らなんだ。

javascript

//http://~で始まるアンカー
a[href^='http://']

//titleがmyで始まるアンカー
a[title^='my']

//.pdfで終わるアンカー
a[href$='.pdf']

//特定の文字列を含んだアンカー
a[href*='jquery.com']

//src属性のdogを含まないimg
img:not([src*='dog'])

その他。

javascript

//チェックボックス以外のinput
input:not(:checkbox)