Jquery中next和children的区别
2个回答
展开全部
1、.next()方法定义和用法
next() 获得匹配元素集合中每个元素紧邻的同胞元素。如果提供选择器,则取回匹配该选择器的下一个同胞元素。
2、.children()方法定义和用法
children()方法返回匹配元素集合中每个元素的子元素,添加可选参数可通过选择器进行过滤。
3、根据定义可以总结出:next是选择兄弟元素,children是选择子元素。
实例:
<div id="div1">
<div id="children"></div>
</div>
<div id="div1Next"></div>
<script type="text/javascript">
$("#div1").children();//拿到的是div1的子元素(id为children的元素)
$("#div1").next();//拿到的是id为div1Next的兄弟元素,等同于$("#div1Next")
</script>
展开全部
next找的是同级的节点,children找的是子节点
<div>
<ul>
<li class="first"><a href="#">这是一级菜单1</a>
<ul>
<li class="second"><a href="#">这是二级菜单11</a></li>
<li class="second"><a href="#">这是二级菜单12</a></li>
</ul>
</li>
<li class="first"><a href="#">这是一级菜单2</a>
<ul>
<li class="second"><a href="#">这是二级菜单21</a></li>
<li class="second"><a href="#">这是二级菜单22</a></li>
</ul>
</li>
</ul>
</div>
jquery代码如下
$(document).ready(function(){
$("li.first").hover(function(){
$(this).children("ul").slideDown(); 找到的是如图表示标黑的ul节点
},
function(){
$(this).children("ul").slideUp();
});
});
如果改成$(this).next("ul"),则找不到,因为没有和它同一级的ul节点!
<div>
<ul>
<li class="first"><a href="#">这是一级菜单1</a>
<ul>
<li class="second"><a href="#">这是二级菜单11</a></li>
<li class="second"><a href="#">这是二级菜单12</a></li>
</ul>
</li>
<li class="first"><a href="#">这是一级菜单2</a>
<ul>
<li class="second"><a href="#">这是二级菜单21</a></li>
<li class="second"><a href="#">这是二级菜单22</a></li>
</ul>
</li>
</ul>
</div>
jquery代码如下
$(document).ready(function(){
$("li.first").hover(function(){
$(this).children("ul").slideDown(); 找到的是如图表示标黑的ul节点
},
function(){
$(this).children("ul").slideUp();
});
});
如果改成$(this).next("ul"),则找不到,因为没有和它同一级的ul节点!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询