学习【js DOM 编程艺术】,最后面有许多jQuery的选择器,每个都动手敲了一遍。
jQuery 提供了高级选择器的方法。
j
s获取元素的三个基本方法分别是通过标签名,类名和id,即(getElementsByTagName, getElementsByClassName和getElementById)。那么jQuery是如何获取呢?
- 通过标签获取:$('tag')
- 通过类名获取:$('.className')
- 通过id获取:$('#id')
除了上面个三个最基本最简单的,还有下面几个css选择器:
$('*') 选择所有元素$('tagA tagB') 选择作为tagA后代的tagB元素$('tagA, tagB, tagC') 选择所有tagA元素,tagB元素和tagC元素$('tag#id') 选择ID为id的tag元素$('tag.className') 选择类名为className的tag元素
jQuery支持下列css2.1属性选择器:
$('tag[attr]') 选择所有带有attr属性的tag元素$('tag[attr*=value]') 选择所有attr属性值中包含字符串value的tag元素$('tag[attr=value]') 选择所有attr属性值等于value的tag元素$('tag[attr!=value]') 选择所有attr属性值不等于value的tag元素$('tag[attr^=value]') 选择所有attr属性值以value开头的tag元素$('tag[attr$=value]') 选择所有attr属性值以value结尾的tag元素$('tag[attr~=value]') 选择所有attr属性值 为空格分割的多个字符串且其中一个字符串等于value 的tag元素$('tag[attr|=value]') 选择所有attr属性值 为连字符分割的字符串切该字符串以value开头的tag元素
子选择器,同辈选择器:
$('tagA > tagB') 选择作为tagA元素子元素的所有tagB元素$('tagA + tagB') 选择紧邻tagA元素且位于其后的tagB元素$('tagA ~ tagB') 选择作为tagA同辈元素且位于其后的所有tagB元素
伪类,伪元素选择器:
$('tag: root') 选择作为文档根元素的tag元素$('tag: nth-child(n)') 选择作为其父元素正数第n个元素的所有tag元素$('tag: nth-last-child(n)') 选择作为其父元素倒数 第n个元素的所有tag元素$('tag: nth-of-type(n)') 选择几个同辈tag元素中的正数第n个$('tag: nth-last-f-type(n)') 选择几个同辈tag元素中的倒数第n个$('tag: first-child') 选择作为其父元素第一个子元素的tag元素$('tag: last-child') 选择作为其父元素第一个子元素的tag元素$('tag: first-of-type') 选择作为同辈tag元素中的第一个$('tag: last-of-type') 选择作为同辈tag元素中的最后一个$('tag: only-child') 选择作为其父元素唯一子元素的tag元素$('tag: only-of-type') 选择作为同辈元素中唯一一个标签为tag的元素$('tag: empty') 选择所有没有子元素的tag元素$('tag: enabled') 选择界面元素中所有已经启用的tag元素$('tag: disabled') 选择界面元素中所有已经禁用的tag元素$('tag: checked') 选择界面元素中所有已经被选中的tag元素(如:复选框,单选按钮)$('tag: not(s)') 选择与选择器s不匹配的所有tag元素
其他专有选择器:
$('tag: even') 选择匹配元素集 中偶数序号的元素(适合突出显示表格行)$('tag: odd') 选择匹配元素集 中奇数序号的元素$('tag: eq(0)'), $('tag: nth(0)') 选择匹配元素 集中的第一个元素,如页面的第一个段落$('tag: gt(n)') 选择匹配元素集 中索引值大于n的所有元素$('tag: lt(n)') 选择匹配元素集 中索引值小于n的所有元素$('tag: first') 选择匹配元素集 中的第一个元素, 等价于eq(0)$('tag: last') 选择匹配元素集 中的最后一个元素$('tag: parent') 选择匹配元素集 中包含子元素(文本节点也算)的所有元素$('tag: contains('test')') 选择匹配元素集 中包含指定文本的所有元素$('tag: visible') 选择匹配元素集 中所有可见的元素(包括display属性为block和inline,visibility属性为visible以及type属性不是hidden的表单元素)$('tag: hidden') 选择匹配元素集 中所有隐藏的元素(包括display属性为none, visibility属性为hidden以及type属性为hidden的表单元素)
一些专门为表单设计的表达式,用于快速访问表单元素:
:input 选择表单中的所有元素:text 选择所有文本字段:password 选择所有密码字段:radio 选择所有单选按钮:checkbox 选择所有复选框:submit 选择所有提交按钮:image 选择所有表单图像:reset 选择所有重置按钮:button 选择所有其他按钮