- A+
所属分类:Web前端
jQuery其他关系查找方法
- find()后代元素:传递一个规定的选择器作为参数,查找范围是jQuery对象的所有后代
* 兄弟元素 紧邻的兄弟元素方法: * next()下一个兄弟 * prev()前一个兄弟 多选方法 * nextAll()后面所有兄弟 * preAll()前面所有兄弟
<style> *{ margin: 0; padding: 0; } .box{ border: 1px solid #000; background-color: white; width: 500px; height: 50px; margin-left: 4px; margin-top: 4px; } p{ width: 50px; height: 50px; background-color: rgb(185, 185, 185); float: left; margin-right: 8px; } span{ float: left; width: 50px; height: 50px; margin-right: 8px; background-color: pink; } </style> <body> <div class="box"> <p></p> <p></p> <p></p> <span></span> <span></span> <span></span> </div> <div class="box"> <p></p> <p></p> <p></p> <span></span> <span></span> <span></span> </div> <div class="box"> <p></p> <p></p> <p></p> <span></span> <span></span> <span></span> </div> <script src="../jq/jquery-1.12.4.min.js"></script> <script> var $box = $(".box") var $p = $("p") //实现点击一个子级标签,让它自己变成红色,使它的前面的兄弟变紫色,后面的兄弟变橘色 var $child = $box.children(); $child.click(function(){ $(this).css("background-color","red") .prevAll().css("background-color","purple") $(this).css("background-color","red") .nextAll().css("background-color","orange") </script> </body>
通过传递参数可以进行二次选择,参数是字符串格式的选择器,在前面或后面兄弟中选中符合选择器规定的部分。
-
parents()祖先级
通过该方法得到的是指定对象的包含body在内的所有祖先级元素组成的jQuery对象
通过传参进行二次选择,参数位置是字符串格式的选择器
-
代码示例:
//实现点击一个子级标签,自己变红色,使它的祖先级变成蓝色 // parents() 查找包含body在内的祖先级 // $(this).css("background-color","red") // .parents().css("background-color","skyblue") // parents()传参数,可以筛选去掉不是div的元素 $(this).css("background-color", "red") .parents("div").css("background-color", "skyblue") })