• jQuery选择器(二)


     (1) Id选择器。

    如果使用任何的元字符作为名称的文本部分, 它必须被两个反斜杠转义:\。

    普通写法:$("#myDiv");
    <span id="foo:bar"></span>
    <span id="foo[bar]"></span>
    <span id="foo.bar"></span>
    
    须用反斜杆:$("#foo\[bar\]")

    (2) 元素选择器

    $("div");

    (3) class选择器

    $(".myClass");

    (4) 匹配所有元素

    $("*")

    (5) 在给定的祖先元素下匹配所有的后代元素

    //找到表单中所有的 input 元素
    $("form input")

    (6) parent > child, 在给定的父元素下匹配所有的子元素

    //匹配表单中所有的子级input元素。
    $("form > input")

    (7) prev + next, 匹配所有紧接在 prev 元素后的 next 元素

    //匹配所有跟在 label 后面的 input 元素
    $("label + input")

    (8) prev ~ siblings, 匹配 prev 元素之后的所有 siblings 元素

    //找到所有与表单同辈的 input 元素
    $("form ~ input")

    (9) :first, 获取第一个元素

    $('li:first');

    (10) :not(selector), 去除所有与给定选择器匹配的元素。在jQuery 1.3中,已经支持复杂选择器了(例如:not(div a) 和 :not(div,a))

    $("input:not(:checked)")

    (11) :even, 匹配所有索引值为偶数的元素,从 0 开始计数。

    $("tr:even")

    (12) :odd, 匹配所有索引值为奇数的元素,从 0 开始计数。

    $("tr:odd")

    (13) :eq(index), 匹配一个给定索引值的元素, 从0开始。类似的还有:gt(index)和:lt(index)

    $("tr:eq(1)")

    (14) :last, 获取最后个元素

    $('li:last')

    (15) :header, 匹配如 h1, h2, h3之类的标题元素

    //给页面内所有标题加上背景色
    $(":header").css("background", "#EEE");

    (16) :contains(text), 匹配包含给定文本的元素

    $("div:contains('John')")

    (17) :focus, 匹配当前获取焦点的元素。

    该选择器常与一个标签名或者另一个选择器一起使用,如果不这么使用,该选择将等同于 ("*:focus")。

    (18) :empty, 匹配所有不包含子元素或者文本的空元素

    $("td:empty")

    (19) :has(selector), 匹配含有选择器所匹配的元素的元素

    //给所有包含 p 元素的 div 元素添加一个 text 类
    $("div:has(p)").addClass("test");

    (20) :parent, 匹配含有子元素或者文本的元素

    //查找所有含有子元素或者文本的 td 元素
    $("td:parent")

    (21) :hidden, 匹配所有不可见元素,或者type为hidden的元素

    //查找隐藏的 tr
    $("tr:hidden")

    (22) :visible, 匹配所有的可见元素

    //查找所有可见的 tr 元素
    $("tr:visible")

    (23) [attribute], 匹配包含给定属性的元素。

    //查找所有含有 id 属性的 div 元素
    $("div[id]")

    (24) [attribute=value], 匹配给定的属性是某个特定值的元素

    $("input[name='newsletter']").attr("checked", true);

    (25) [attribute!=value], 属性不等于特定值的元素。

    等价于 :not([attr=value])  要匹配含有特定属性但不等于特定值的元素,请使用[attr]:not([attr=value])

    $("input[name!='newsletter']").attr("checked", true);

    (26) [attribute^=value], 匹配给定的属性是以某些值开始的元素

    $("input[name^='news']")

    (27) [attribute$=value], 匹配给定的属性是以某些值结尾的元素

    $("input[name$='letter']")

    (28) [attribute*=value], 匹配给定的属性是以包含某些值的元素

    $("input[name*='man']")

    (29) [selector1][selector2][selectorN], 复合属性选择器,需要同时满足多个条件时使用。

    //到所有含有 id 属性,并且它的 name 属性是以 man 结尾的
    $("input[id][name$='man']")

    (30) :first-child, 匹配所给选择器( :之前的选择器)的第一个子元素

    //在每个 ul 中查找第一个 li
    $("ul li:first-child")

    (31) :last-child, 匹配最后一个子元素

    $("ul li:last-child")

    (32) :nth-child, 匹配其父元素下的第N个子或奇偶元素

    :nth-child从1开始的, 可以使用nth-child(even)、:nth-child(odd)、:nth-child(3n)、:nth-child(2)、:nth-child(3n+1)等

    /在每个 ul 查找第 2 个li
    $("ul li:nth-child(2)")

    (33) :only-child, 如果某个元素是父元素中唯一的子元素,那将会被匹配, 如果父元素中含有其他元素,那将不会被匹配。

    //在 ul 中查找是唯一子元素的 li, 即只有一个<li>
    $("ul li:only-child")

    (34) :input, 匹配所有 input, textarea, select 和 button 元素

    $(":input")

    (35) :text, 匹配所有的单行文本框

    $(":text")

    (36) :password, 匹配所有密码框

    $(":password")

    (37) :radio, 匹配所有单选按钮

    $(":radio")

    (38) :checkbox, 匹配所有复选框

    $(":checkbox")

    (39) :submit, 匹配所有提交按钮

    理论上只匹配 type="submit" 的input或者button,但是现在的很多浏览器,button元素默认的type即为submit,所以很多情况下,不设置type的button也会成为筛选结果。为了防止歧义或者误操作,建议所有的button在使用时都添加type属性。

    $(":submit")

    (40) :image, 匹配所有图像域

    $(":image")

    (41) :reset, 匹配所有重置按钮

    $(":reset")

    (42) :button, 匹配所有按钮, 包括 <input type="button" />

    $(":button")

    (43) :file, 匹配所有文件域

    $(":file")

    (44) :enabled, 匹配所有可用元素

    $("input:enabled")

    (45) :disabled, 匹配所有不可用元素

    $("input:disabled")

    (46) :checked, 匹配所有选中的被选中元素(复选框、单选框等,select中的option),对于select元素来说,获取选中推荐使用 :selected

    $("input:checked")

    (47) :selected, 匹配所有选中的option元素

    $("select option:selected")
  • 相关阅读:
    PHPCMS实现文章置顶功能的方法
    phpcms v9栏目列表调用每一篇文章内容方法1
    phpcms v9使用GET调用指定id文章内容、页面数据方法
    PHPCMS GET标签使用
    PHPCMS栏目调用2
    PHPCMS二层栏目调用
    PHPCMS get当中使用limit
    phpcms栏目调用
    WAMP学习日记之:Apache发布php网站
    用Apache实现一个ip虚拟多个web站点
  • 原文地址:https://www.cnblogs.com/myitnews/p/11780522.html
Copyright © 2020-2023  润新知