jQuery框架

作者: 清风沐沐 | 来源:发表于2016-11-22 12:29 被阅读26次

jQuery 选择器:

一、jQuery 使用 CSS 选择器来选取 HTML 元素

  • $('#id')

  • $('.class')

  • $('element')

    • $("p") 选取 <p> 元素。
    • $("p.intro") 选取所有 class="intro" 的 <p> 元素。
    • $("p#demo") 选取所有 id="demo" 的 <p> 元素。
  • $('#id,.id,element') 选择

二、jQuery层次选择器

$(s1 s2) [父子]
派生选择器:在s1内部获得全部的s2节点(不考虑层次)
$("div span");在div内部获得span节点

$(s1 > s2) [父子]
直接子元素选择器:在s1内部获得元素节点s2 (考虑层次)
$("div > span")

$(s1 + s2) [兄弟]
直接兄弟选择器:在s1后边获得紧紧挨着的第一个兄弟关系的s2节点
$("div + span")

$(s1 ~ s2) [兄弟]
后续全部兄弟关系的节点选择器:在s1后边获得全兄弟关系的s2节点
$("div ~ span")

三、jQuery并且选择器

$("li:first") 获得li元素 并且是第一个
$("li:last") 获得li元素 并且是最后一个
$("li:eq(index)") equal 获得li元素 并且是第index个
$("li:gt(index)") great than 获得li元素 并且大于第index个
$("li:lt(index)") less than 获得li元素 并且小于第index个
$("li:even")获得li元素 并且下表索引值为偶数的节点
$("li:odd")获得li元素 并且下表索引值为奇数的节点
$("li:not(#idname)")获得li元素 并且去除id为idname的节点
//多个并且关系的选择器,没有前后顺序要求,但是要避免产生“歧义”
$("li.classname")获得li元素 并且class为classname的节点

四、jQuery内容过滤选择器

  • div:contains()
    包含内容选择器,获取的节点内容必须包含指定的内容
    $('div:contains(beijing)')

  • jQuery :empty选择器
    获取空白节点 例如:<div></div>
    $('div:empty')

  • jQuery :has()选择器
    节点内部必须包含指定选择器对应的元素
    $('div:has(#apple)')

  • jQuery :parent选择器
    寻找的节点必须作为父节点存在
    $('div:parent')

五、表单内容选择器

  • :checked 获得被选中的单选框(radio)/复选框(checkbox)
    $('.idname:checked')
  • :selected 获得被选中的下拉框
    $('.idname:selected')

六、jQuery 使用 XPath 表达式来选择带有给定属性的元素。

  • $("[href]") 选取所有带有 href 属性的元素。
  • $("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
  • $("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
  • $("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。

七、更多的选择器实例

$(this) 当前 HTML 元素
$("p") 所有 <p> 元素
$("p.intro") 所有 class="intro" 的 <p> 元素
$(".intro") 所有 class="intro" 的元素
$("#intro") id="intro" 的元素
$("ul li:first") 每个 <ul> 的第一个 <li> 元素
$("[href$='.jpg']") 所有带有以 ".jpg" 结尾的属性值的 href 属性
$("div#intro .head") id="intro" 的 <div> 元素中的所有 class="head" 的元素

*
$("*")
所有元素

#id
$("#lastname")
id="lastname" 的元素

.class
$(".intro")
所有 class="intro" 的元素

element
$("p")
所有 <p> 元素

.class.class
$(".intro.demo")
所有 class="intro" 且 class="demo" 的元素

:first
$("p:first")
第一个 <p> 元素

:last
$("p:last")
最后一个 <p> 元素

:even
$("tr:even")
所有偶数 <tr> 元素

:odd
$("tr:odd")
所有奇数 <tr> 元素

:eq(index)
$("ul li:eq(3)")
列表中的第四个元素(index 从 0 开始)

:gt(no)
$("ul li:gt(3)")
列出 index 大于 3 的元素

:lt(no)
$("ul li:lt(3)")
列出 index 小于 3 的元素

:not(selector)
$("input:not(:empty)")
所有不为空的 input 元素

:header
$(":header")
所有标题元素 <h1> - <h6>

:animated

所有动画元素

:contains(text)
$(":contains('W3School')")
包含指定字符串的所有元素

:empty
$(":empty")
无子(元素)节点的所有元素

:hidden
$("p:hidden")
所有隐藏的 <p> 元素

:visible
$("table:visible")
所有可见的表格

s1,s2,s3
$("th,td,.intro")
所有带有匹配选择的元素

[attribute]
$("[href]")
所有带有 href 属性的元素

[attribute=value]
$("[href='#']")
所有 href 属性的值等于 "#" 的元素

[attribute!=value]
$("[href!='#']")
所有 href 属性的值不等于 "#" 的元素

[attribute$=value]
$("[href$='.jpg']")
所有 href 属性的值包含以 ".jpg" 结尾的元素

:input
$(":input")
所有 <input> 元素

:text
$(":text")
所有 type="text" 的 <input> 元素

:password
$(":password")
所有 type="password" 的 <input> 元素

:radio
$(":radio")
所有 type="radio" 的 <input> 元素

:checkbox
$(":checkbox")
所有 type="checkbox" 的 <input> 元素

:submit
$(":submit")
所有 type="submit" 的 <input> 元素

:reset
$(":reset")
所有 type="reset" 的 <input> 元素

:button
$(":button")
所有 type="button" 的 <input> 元素

:image
$(":image")
所有 type="image" 的 <input> 元素

:file
$(":file")
所有 type="file" 的 <input> 元素

:enabled
$(":enabled")
所有激活的 input 元素

:disabled
$(":disabled")
所有禁用的 input 元素

:selected
$(":selected")
所有被选取的 input 元素

:checked
$(":checked")
所有被选中的 input 元素

相关文章

网友评论

    本文标题:jQuery框架

    本文链接:https://www.haomeiwen.com/subject/sfvppttx.html