2016-02-14 2 views
0

Я принимаю некоторые вопросы по аккордеон. Мне нужно выбрать все, кроме первогоdd и скрыть em все.jquery select specific dd

fiddle В принципе, я хочу, чтобы ответ 1 отображался при загрузке страницы, и я не хочу вставлять какой-либо идентификатор или класс в html. Что это самый простой способ для достижения этой цели

$('dd').hide(); 
 
$('dl').on('mouseenter', 'dt', function() { 
 
    $(this).next().slideDown(200); 
 
    $(this).next().siblings('dd').slideUp(200); 
 
});
dt { 
 
    background-color: #d464d4; 
 
    padding: 10px; 
 
    font-size: 16px; 
 
    text-align: center; 
 
    cursor: pointer; 
 
} 
 
dd { 
 
    height: 30px; 
 
    line-height: 2; 
 
    text-align: center; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<dl> 
 
    <dt>FAQ1</dt> 
 
    <dd>Answer 1</dd> 
 
    <dt>FAQ2</dt> 
 
    <dd>Answer 2</dd><dt>FAQ3</dt> 
 
    <dd>Answer 3</dd><dt>FAQ4</dt> 
 
    <dd>Answer 4</dd><dt>FAQ5</dt> 
 
    <dd>Answer 5</dd> 
 
    <dt>FAQ6</dt> 
 
    <dd>Answer 6</dd> 
 
</dl>

ответ

0

$('dd:nth-child(n+4)').hide();

Это означает, что вы выбираете каждый dd который является n+4 дитя своего родителя. * n начинается с 0 и увеличивается.

0
$('dd:gt(0)').hide(); 

Также: gt (n) фильтр начинает выбор после элемента "n". В этом случае со второго <dd>. (Поскольку: gt() не является css, но число jquery начинается с «0»)