jQuery没有将divs过滤为第n个孩子?
问题描述:
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"><script>
<script>
$(document).ready(function()
{
$('.sss').filter(':nth-child(n+2)').hide();
$('.sss').on('mouseenter', '.question', function()
{
$(this).next().slideDown(200).siblings('.answer').slideUp(200);
});
});
</script>
</head>
<div class="sss">
<div class="question">Question</div>
<div class="answer">Answer</div>
<div class="question">Question</div>
<div class="answer">Answer</div>
<div class="question">Question</div>
<div class="answer">Answer</div>
<div class="question">Question</div>
<div class="answer">Answer</div>
</div>
部门没有亲子关系或我在这里做错了吗?jQuery没有将divs过滤为第n个孩子?
答
试试这个:
$('.sss').children().filter(':nth-child(n+2)').hide();
如果你需要的所有question
DIV然后尝试:
$('.sss').children(':nth-child(2n)').hide();
OR
$('.sss .question').hide();
并为所有answer
:
$('.sss').children(':nth-child(2n+1)').hide();
OR
$('.sss .answer').hide();
答
这里是不使用过滤器的替代:用孩子
$('.sss').children(':nth-child(n+2)').hide();
()解决了这个问题。为什么jQuery不考虑像childs而不是div的标签?我看到一个使用ul和li标签制作的示例,它不需要使用children()。 – Aristona