选择元素
1、$()函数 可以根据css的选择器来选择 根据标签名$('p'); ID$('#id'); 类 $('.class');
2、CSS选择器
$('#id > li').addClass('className'); 给id下面的li标签加className 的类
$('#id li:not(.classname)').addClass('className'); 给id子标签没有classname属性的li添加className属性(类)
3、属性选择器 $('img[alt]'); 选择有alt属性的img标签
$('a[href]');是选择带有href属性的a标签
$('a[href ^="mailto:"]');选择带有href属性 并且href属性以mailto:开头的标签
$('a[href $=".pdf"]');选择带有href属性 并且href属性以.pdf结尾的标签
属性选择器也可以组合使用
$('a[href^="http"][href*="henry"]').addClass('className');选择以http开头的并且任意位置包含henry的所有标签添加一个className类
自定义选择符
$('div.horizontal:eq(1)');选择带有horizontal的div标签的第二个(从0开始)
$('div.nth-child(1)');
选择符::eq() :odd(奇数选择) :even偶数选择
$(document).ready({
$('tr:even').addClass('alt');//给tr的偶数行添加alt类
});
$(document).ready({
$('tr:nth-child(odd)').addClass('alt');//根据父类的第几个tr计数
});
基于上下文内容选择元素
$document.ready({
$('td:contains(Henry').addClass('className'); 给包含Henry的td添加class类 henry是上下文内容
});
基于form表单的选择器
选择符
:input :button :enabled(启用的表单元素) :disabled(禁用的表单元素); :checked :selected
例如: $('input[type="radio"]:checked');可以选择单选框
DOM遍历方法
.filter()方法: $('tr').filter(':even').addClass('alt');
在filter方法内添加函数
$('a').filter(function(){
return this.hostname && this.hostname != location.hostname;
}).addClass('className');
第二行代码可以筛选出来符合下面两个条件的a标签:1、必须包含一个带有域名this.hostname的href属性,可以排除mailto以及类似连。2、连接指向的域名:this.hostname必须不等于当前域所在的名称location.hostname。
为特定的单元格添加样式:
$(document).ready({
$('td:contains(Henry)').next().addClass('highlight');
});寻找到td包含henry的下一个td 如果为nextALL则所选td的右边所有td添加highligh类 next同辈元素,同理还有prev和prevAll(); 如果添加.addBack()方法则退回到选定的元素。