Jquery 遍历同代
write by 2019/6/15 13:10
1. 同胞¶
同胞拥有相同的父元素。
2. 水平遍历¶
有许多有用的方法让我们在 DOM 树进行水平遍历:
- siblings() 方法返回被选元素的所有同胞元素。
- next() 方法返回被选元素的下一个同胞元素。
- nextAll() 方法返回被选元素的所有跟随的同胞元素。
- nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。
- prev() 方法返回被选元素的上一个同胞元素。
- prevAll()方法返回向上被选元素的所有跟随的同胞元素
- prevUntil() 方法返回向上介于两个给定参数之间的所有跟随的同胞元素
总结
1. next/prev 仅仅是选中的元素向下/向上一个元素,不能带参数 2. nextAll/prevAll 选中的元素向下/向上所有同辈元素,不能带参数 3. nextUntil/prevUntil 选中的元素向到后面参数之间元素
2.1 siblings¶
siblings() 方法返回被选元素的所有同胞元素。下面的例子返回 <p>
的所有同胞元素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <p id="keke">我是可可</p> <p id="duodo">我是多多</p> </div> </body> <script> $(function () { $('#keke').siblings().css({"color":"red","border":"2px solid red"}); }) </script> </html>
您也可以使用可选参数来过滤对同胞元素的搜索.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <p id="keke">我是可可</p> <p id="duodo">我是多多</p> <h3>人生充满着期待,梦想连接着未来。</h3> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#keke').siblings('h3').css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.2 next¶
next() 方法返回 被选元素的下一个同胞元素 。该方法只返回一个元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <p id="keke">我是可可</p> <p id="duodo">我是多多</p> <h3>人生充满着期待,梦想连接着未来。</h3> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#keke').next().css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.3 nextAll¶
nextAll() 方法返回被选元素的所有跟随的同胞元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <p id="keke">我是可可</p> <p id="duodo">我是多多</p> <h3>人生充满着期待,梦想连接着未来。</h3> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#keke').nextAll().css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.4 nextUntil¶
nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <p id="keke">我是可可</p> <p id="duodo">我是多多</p> <h3>人生充满着期待,梦想连接着未来。</h3> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#keke').nextUntil('h4').css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.5 prev¶
方法返回被选元素的上一个同胞元素。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <h3>人生充满着期待,梦想连接着未来。</h3> <p id="keke">我是可可</p> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <p id="duoduo">我是多多</p> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#duoduo').prev().css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.6 prevAll¶
方法返回向上被选元素的所有跟随的同胞元素
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <h3>人生充满着期待,梦想连接着未来。</h3> <p id="keke">我是可可</p> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <p id="duoduo">我是多多</p> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#duoduo').prevAll().css({"color":"red","border":"2px solid red"}); }) </script> </html>
2.7 prevUntil¶
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>caimengzhi blog jquery</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script> <style type="text/css"> #div1 ,#div1 * { border: 2px solid lightgrey; color: black; padding: 5px; margin: 15px; text-align: center; } </style> </head> <body> <div id="div1"> 我是爸爸 <p id="maomao">我是毛毛</p> <h3>人生充满着期待,梦想连接着未来。</h3> <p id="keke">我是可可</p> <h4>这么努力就是想让曾经看不起我的人闭嘴。</h4> <p id="duoduo">我是多多</p> <h3>如果你的面前有阴影,那是因为你的背后有阳光。</h3> <h4>山顶对我们半山腰的人来说并不遥远。</h4> </div> </body> <script> $(function () { $('#duoduo').prevUntil('h3').css({"color":"red","border":"2px solid red"}); }) </script> </html>