zoukankan      html  css  js  c++  java
  • js进阶 11-17 juqery如何查找一个元素的同级元素

    js进阶 11-17 juqery如何查找一个元素的同级元素

    一、总结

    一句话总结:三个方法,向前(prev()),向后(next())和兄弟(siblings()),而前面两个每个都对应三个,prev(),prevAll(),prevUntil()。

    1、jquery中某个功能的一般延伸方法有哪些,比如向前找兄弟?

    prev(),prevAll(),prevUntil()

    • prev() 获得匹配元素集合中每个元素紧邻的前一个同辈元素,由选择器筛选(可选)。
    • prevAll() 获得匹配元素集合中每个元素之前的所有同辈元素,由选择器进行筛选(可选)。
    • prevUntil() 获得每个元素之前所有的同辈元素,直到遇到匹配选择器的元素为止。
    33                 // $('li:last').prev().css('background','red')
    34                 // $('li:last').prevAll('.red').css('background','red')
    35                 $('li:last').prevUntil('.red').css('background','red')

    2、jquery中查找同级元素有哪三个方法?

    向前(prev()),向后(next())和兄弟(siblings())

    32             $('#btn1').click(function(){
    33                 // $('li:last').prev().css('background','red')
    34                 // $('li:last').prevAll('.red').css('background','red')
    35                 $('li:last').prevUntil('.red').css('background','red')
    36             })
    37             $('#btn2').click(function(){
    38                 //$('li:first').next().css('background','red')
    39                 // $('li:first').nextAll('.red').css('background','red')
    40                 // $('li:first').nextUntil('.red').css('background','red')
    41                 $('.green').siblings().css('background','red')
    42 
    43 
    44             })

    3、jquery中查找方法中如何进一步限制(几乎所有的jquery方法都可以进一步加选择器限制所选范围)?

    方法中可以放参数,参数可以是标签和选择器和jquery对象

    35                 $('li:last').prevUntil('.red').css('background','red')

    4、几乎所有的jquery方法都可以进一步加选择器限制所选范围么?

    可以,比如这里的查找同级

    38                 //$('li:first').next().css('background','red')
    39                 // $('li:first').nextAll('.red').css('background','red')
    40                 // $('li:first').nextUntil('.red').css('background','red')
    41                 $('.green').siblings().css('background','red')

    二、juqery如何查找一个元素的同级元素

    1、相关知识

    向前查找


    • prev() 获得匹配元素集合中每个元素紧邻的前一个同辈元素,由选择器筛选(可选)。
    • prevAll() 获得匹配元素集合中每个元素之前的所有同辈元素,由选择器进行筛选(可选)。
    • prevUntil() 获得每个元素之前所有的同辈元素,直到遇到匹配选择器的元素为止。

    向后查找


    • next() 获得匹配元素集合中每个元素紧邻的同辈元素。
    • nextAll() 获得匹配元素集合中每个元素之后的所有同辈元素,由选择器进行筛选(可选)。
    • nextUntil() 获得每个元素之后所有的同辈元素,直到遇到匹配选择器的元素为止。

    查找所有兄弟元素


    • siblings() 方法返回被选元素的所有同胞元素。

    2、代码

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <style>
     4 </style>
     5 <head>
     6     <meta charset="UTF-8">
     7     <title>演示文档</title>
     8     <script type="text/javascript" src="jquery-3.1.1.min.js"></script>
     9     <style>
    10         li{
    11             margin-top: 5px;width: 150px;
    12         }    
    13 
    14     </style>
    15 </style>
    16 </head>
    17 <body>
    18     <ol>
    19         <li>列表项0</li>
    20         <li>列表项1</li>
    21         <li>列表项2</li>
    22         <li class="red">列表项3</li>
    23         <li class="red">列表项4</li>
    24         <li class="green">列表项5</li>
    25         <li>列表项6</li>
    26         <li>列表项7</li>
    27     </ol>
    28     <input id="btn1" type="button" value='向前查找'>
    29     <input id="btn2" type="button" value='向后查找'>
    30     <script type="text/javascript">
    31         $(function(){
    32             $('#btn1').click(function(){
    33                 // $('li:last').prev().css('background','red')
    34                 // $('li:last').prevAll('.red').css('background','red')
    35                 $('li:last').prevUntil('.red').css('background','red')
    36             })
    37             $('#btn2').click(function(){
    38                 //$('li:first').next().css('background','red')
    39                 // $('li:first').nextAll('.red').css('background','red')
    40                 // $('li:first').nextUntil('.red').css('background','red')
    41                 $('.green').siblings().css('background','red')
    42 
    43 
    44             })
    45         })
    46     </script>
    47 </body>
    48 </html>
     
  • 相关阅读:
    P3913 车的攻击
    P1866 编号
    P1100 高低位切换
    P1469 找筷子
    网络穿透/云端组网/视频拉转推服务EasyNTS上云网关管理平台使用过程中掉线如何排查?
    RTSP协议Web无插件直播平台EasyNVR调用登录接口报“密码加解密错误”如何解决?
    安防视频智能分析平台EasyNVR新版本直接使用老版本的数据库导致界面数据异常的分析
    RTSP协议视频智能分析平台EasyNVR更新版本后无法正常显示平台页面排查步骤
    如何将RTSP/GB28181协议视频监控平台EasyNVR/EasyGBS等录像文件通过ffmpeg转HLS进行播放?
    视频直播/智能分析平台EasyNVR调用登录接口返回‘密码加解密错误’如何修复?
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9232873.html
Copyright © 2011-2022 走看看