一、基本选择器
1. id选择器(指定元素的id),将id = "myComponent"的元素背景色设置为红色。
$('#myComponent').css('backgroundColor','#f00');
2. class选择器,将class = "form-group"的背景色设置为黑色。
$('.form-group').css({
"backgroundColor":"#000"
});
3. element选择器(标签选择器),将p元素的文字大小设置为18px
$('p').css('font-size', '18px');
4. 通配符选择器()*
// form下的所有元素,将字体颜色设置为红色
$('form *').css('color', '#f00');
5. 群组选择器(,)
// 将p元素和div元素的margin设为0
$('p, div').css('margin', '0');
二、 层次选择器
a. parent > child(直系子元素)
// 选取div下的第一代span元素,将背景色设为红色
$('div > span').css('backgroundColor', '#f00');
Eg:下面的代码,只有第一个span会变色,第二个span不属于div的一代子元素,颜色保持不变。
<div>
<span>123</span>
<p>
<span>456</span>
</p>
</div>
如图:
b. prev + next(下一个兄弟元素,等同于next()方法)
// 选取class为item的下一个div兄弟元素
$('.item + div').css('color', '#f00');
// 等价代码
//$('.item').next('div').css('color', '#f00');});
Eg:下面的代码,只有123和789会变色
<p class="item"></p>
<div>123</div>
<div>456</div>
<span class="item"></span>
<div>789</div>
如图:
c. prev ~ siblings(prev元素的所有兄弟元素,等同于nextAll()方法)
// 选取class为inside之后的所有div兄弟元素
$('.inside ~ div').css('color', '#f00');
// 等价代码
//$('.inside').nextAll('div').css('color', '#f00');});
Eg:下面的代码,G2和G4会变色
<div class="inside">G1</div>
<div>G2</div>
<span>G3</span>
<div>G4</div>
如图:
三、 过滤选择器
1. 基本过滤选择器
——1.1 :first和:last(取第一个元素或最后一个元素)
$('span:first').css('color', '#f00');
$('span:last').css('color', '#f00');
Eg:下面的代码,G1(first元素)和G3(last元素)会变色
<span>G1</span>
<span>G2</span>
<span>G3</span>
如图:
——1.2 :not(取非元素)
$('div:not(.wrap)').css('color', '#f00');
Eg:下面的代码,G1会变色
<div>G1</div>
<div class="wrap">G2</div>
如图:
Eg:但是,请注意下面的代码:当G1所在div和G2所在div是父子关系时,G1和G2都会变色。
<div>
G1 <div class="wrap">G2</div>
</div>
如图:
——1.3 :even和:odd(取偶数索引或奇数索引元素,索引从0开始,even表示偶数,odd表示奇数)
$('tr:even').css('background', 'green'); // 偶数行颜色
$('tr:odd').css('background', 'red'); // 奇数行颜色
Eg:A、C行颜色green(第一行的索引为0),B、D行颜色red
<table width="200" cellpadding="0" cellspacing="0">
<tbody>
<tr><td>A</td></tr>
<tr><td>B</td></tr>
<tr><td>C</td></tr>
<tr><td>D</td></tr>
</tbody>
</table>
如图:
——1.4 :eq(x) (取指定索引的元素)
$('tr:eq(2)').css('background', 'yellow');
Eg:更改第三行的背景色,在上面的代码中C的背景会变色。
如图:
——1.5 :gt(x)和:lt(x)(取大于x索引或小于x索引的元素)
$('ul li:gt(2)').css('color', '#f00');
$('ul li:lt(2)').css('color', '#00f');
Eg:L4和L5会是红色,L1和L2会是蓝色,L3是默认颜色
<ul>
<li>L1</li>
<li>L2</li>
<li>L3</li>
<li>L4</li>
<li>L5</li>
</ul>
如图:
——1.6 :header(取H1~H6标题元素)
$(':header').css('background', 'lawngreen');
Eg: 下面的代码,H1~H6的背景色都会变
<h1>H1</h1>
<h2>H2</h2>
<h3>H3</h3>
<h4>H4</h4>
<h5>H5</h5>
<h6>H6</h6>
如图:
请看下文.....