• Jquery学习----选择器


     
    学习Jquery选择器之后,可以发现与css的选择器几乎相同,可能也就是最新的css选择器还不能在jquery中实现,但那都很少用。
    下面是Jquery中常见的选择器:
    一、基本选择器
    $("div").css("background-color", "red");//表示对所有的div增加背景颜色--红色。
    $(".divClass").css("background", "gray");//表示对所有class为'divClass'的元素设置背景色--灰色

    二、层次选择器
       
    //下面这两个都是表示紧邻的下一个同辈元素。如果.spanclass代表span,则后面同辈元素也必须是span
    $(".spanclass+span").css("color", "blue").css("font-size", 33);
    $(".spanclass").next().next().css("color", "blue").css("font-size", 33);
    //下面这两个表示所有的后面的同辈元素
    $(".spanclass~span").css("color", "blue").css("font-size", 33);
    $(".spanclass").nextAll().css("color", "blue").css("font-size", 33);
        //下面这个表示与其同辈的无论前后的span,不包括本身
        $(".spanclass").siblings("span").css("color", "blue").css("font-size", 33);
     
    三、过滤选择器
       包括:基本过滤器、内容过滤器、可见性过滤器、属性过滤器、表单过滤器等
     
    下面附详细代码,代码中有各种过滤器使用方法及详细注释。
      1 <!DOCTYPE html>
      2 <html lang="en">
      3 
      4 <head>
      5     <meta charset="UTF-8">
      6     <meta name="viewport" content="width=device-width, initial-scale=1.0">
      7     <meta http-equiv="X-UA-Compatible" content="ie=edge">
      8     <title>Document</title>
      9 
     10     <script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
     11     <style>
     12         div {
     13             border: 1px solid blue;
     14             width: 200px;
     15             height: 250px;
     16         }
     17         
     18         table td,
     19         table th {
     20             border: 1px solid red;
     21         }
     22     </style>
     23 
     24 </head>
     25 
     26 <body>
     27 
     28     <h1><span>Jquery Selector Test子代</span></h1>
     29     <h1>
     30         <p>aaaaa<span>wo在span中是子代的子代</span></p>
     31     </h1>
     32     <div id="div1Id" class="divClass" title="div" style="float:left">我是div1
     33         <div style="100px;height:100px">我是内部div1</div>
     34         <div style="100px;height:100px">我是内部div2</div>
     35         <div style="100px;height:100px">我是内部div3</div>
     36     </div>
     37     <div class="divClass" style="float:left">
     38         <div style="100px;height:100px">我是内部div</div>
     39         <div style="100px;height:100px">我是内部div2</div>
     40         <div style="100px;height:100px">我是内部div3</div>
     41         <span>前面的span</span><span class="spanclass">我是div2</span><span>紧跟的部分哈哈</span><span>孙子部分</span></div>
     42     <div title="div" class="divClass" style="float:left"><span>我是div3</span>
     43         <div style="100px;height:100px">我是内部div</div>
     44         <div style="100px;height:100px">我是内部div2</div>
     45         <div style="100px;height:100px">我是内部div3</div>
     46     </div>
     47     <div style="float:left"><span>我是div4</span></div>
     48     <div style="float:right;display:none"><span>我是div5</span></div>
     49 
     50     <table>
     51         <tr>
     52             <th>aaaaaaa</th>
     53             <th>aaaaaaa</th>
     54             <th>aaaaaaa</th>
     55             <th>aaaaaaa</th>
     56             <th>aaaaaaa</th>
     57             <th>aaaaaaa</th>
     58             <th>aaaaaaa</th>
     59             <th>aaaaaaa</th>
     60         </tr>
     61         <tr>
     62             <td>bbbbbbb</td>
     63             <td>bbbbbbb</td>
     64             <td>bbbbbbb</td>
     65             <td>bbbbbbb</td>
     66             <td>bbbbbbb</td>
     67             <td>bbbbbbb</td>
     68             <td>bbbbbbb</td>
     69             <td>bbbbbbb</td>
     70         </tr>
     71         <tr>
     72             <td>ccccccc</td>
     73             <td>ccccccc</td>
     74             <td>ccccccc</td>
     75             <td>ccccccc</td>
     76             <td>ccccccc</td>
     77             <td>ccccccc</td>
     78             <td>ccccccc</td>
     79             <td>ccccccc</td>
     80         </tr>
     81         <tr>
     82             <td>dddddddd</td>
     83             <td>dddddddd</td>
     84             <td>dddddddd</td>
     85             <td>dddddddd</td>
     86             <td>dddddddd</td>
     87             <td>dddddddd</td>
     88             <td>dddddddd</td>
     89             <td>dddddddd</td>
     90         </tr>
     91     </table>
     92     <form>
     93 
     94         <input type="text" value="慢慢显示" hidden="true">
     95     </form>
     96 
     97 
     98     <script>
     99         //一、基本选择器的使用
    100 
    101         $(document).ready(function() {
    102             //dom加载完就执行的部分
    103             // $("div").css("background-color", "red");
    104 
    105         })
    106 
    107         $(function() {
    108                 //$("div").css("background-color", "yellow");
    109             })
    110             //Jquery可以无限次的写dom加载完之后执行的方法,不同于window.onload,只能写一次
    111         $(function() {
    112             // $(".divClass").css("background", "gray");
    113         })
    114 
    115 
    116         //二、层次选择器的使用
    117         /*  $(function() {
    118              $("span,.divClass").css("color", "red").css("font-size", 20);
    119          }) */
    120         //$("h1 span").css("color", "blue"); //这个是h1下所有的子代,孙子辈也可以
    121         //$("h1>span").css("color", "blue"); //这个是h1下第一子代,孙子不可以
    122         //下面这两个都是表示紧邻的下一个同辈元素。如果.spanclass代表span,则后面同辈元素也必须是span
    123         //$(".spanclass+span").css("color", "blue").css("font-size", 33);
    124         // $(".spanclass").next().next().css("color", "blue").css("font-size", 33);
    125         //下面这两个表示所有的后面的同辈元素
    126         //$(".spanclass~span").css("color", "blue").css("font-size", 33);
    127         //$(".spanclass").nextAll("span").css("color", "blue").css("font-size", 33);
    128         //下面这个表示与其同辈的无论前后的span,不包括本身
    129         //$(".spanclass").siblings("span").css("color", "blue").css("font-size", 33);
    130 
    131 
    132         //三、过滤选择器的使用,一般都是用:。PS:冒号表示过滤的意思。前面不带空格,表示自身筛选,带空格表示子代筛选
    133         $(function() {
    134 
    135             //1,基本过滤器
    136             //表示table中隔列变色
    137             /*  $("table th:even").css("background", "red");
    138              $("table th:odd").css("background", "blue"); */
    139 
    140             //表示table中隔行变色。
    141             /* $("table tr:even").css("background", "yellow");
    142             $("table tr:odd").css("background", "gray"); */
    143 
    144             //多个选择器的同时使用,其实是可以的。可以理解为对一堆对象不停的筛选。这可能也是Jquery有名的链式操作了。
    145             //下面表示从>0行开始隔行变色
    146             $("table tr:gt(0):even").css("background", "yellow");
    147             $("table tr:gt(0):odd").css("background", "gray");
    148 
    149             //2,内容过滤器
    150             $("div:contains('div4')").css("background", "red");
    151             //3,可见性过滤选择器
    152             $("div:hidden").show(3000);
    153             $("input:hidden").show(3000);
    154 
    155             //4,属性过滤器' 
    156             //$("div[title=div]").css("background", "blue");
    157             // $("div[title!=div]").css("background", "red"); //div的集合中 title不等于div的div的集合。
    158             //$("div[id][title=div]").css("background", "blue"); //多个属性过滤器并列使用,不断缩小结果集的过程而已。
    159 
    160             //ps 补充一个基本过滤器和下面比较。这个表示divclass的div后代的中div的第一个设置为黄色。
    161             $("div.divClass div:first").css("background", "yellow"); //这个表示选择出所有符合条件对应的div,选取第一个
    162             //5,:first-child'注意事项使用子元素过滤器需要冒号前加空格,才会生效
    163             $("div.divClass :first-child").css("background", "yellow"); //表示class=divClass的div集合的每一个div子元素第一个子元素设置为yellow
    164             $("div.divClass :nth-child(2)").css("background", "red"); //表示class=divClass的div集合每一个div的子元素中第二个子元素设置为yellow
    165         })
    166     </script>
    167 
    168 </body>
    169 
    170 </html>
    View Code

    后续补充表单过滤器详细代码。。。

  • 相关阅读:
    缠中说禅 摘选
    laravel中不使用 remember_token时退出报错,如何解决?
    关于Ubuntu拒绝root用户ssh远程登录
    laravel中类似于thinkPHP中trace功能
    js原生语法实现表格操作
    使用clear来清除localStorage保存对象的全部数据
    JS设置CSS样式的集中方式
    thinkphp两表联查并且分页
    生于忧患,死于安乐 (先秦:孟子及其弟子)
    在对年轻人最不友好的环境中,刘裕起于阡陌,成就霸业
  • 原文地址:https://www.cnblogs.com/lixianfu5005/p/9074264.html
Copyright © 2020-2023  润新知