Извинения, если заголовок выше немного запутан, писать эти вещи на простом английском языке зачастую сложнее, чем проблему внутри!
Я уверен, что это довольно простая проблема, но я немного связан с селекторами jQuery и иерархией, и теперь не вижу дерева для деревьев ... это упражнение в классе, поэтому я застрял с HTML-кодом как есть.
Я пытаюсь скрыть / отобразить абзацы под заголовком H3, дважды щелкнув заголовок H3.
<div class="chapter" id="chapter-preface">
<h3 class="chapter-title">Preface</h3>
<p>Blah, blah, blah, blah, blah</p>
<p>Blah, blah, blah, blah</p>
<p>Blah, blah, blah</p>
<p>Blah</p>
</div>
<div class="chapter" id="chapter-1">
<h3 class="chapter-title">Chapter 1</h3>
<p>Rhubarb, rhubarb, rhubarb, rhubarb, rhubarb, rhubarb</p>
<p>Rhubarb, rhubarb, rhubarb</p>
</div>
Самый близкий к этому моменту следующий код jQuery:
$('.chapter-title').dblclick(function() {
$('div p').toggleClass('hidden');
});
но, как, вероятно, довольно очевидно, это имеет эффект только скрытия всех тегов p под обоими элементами div. Я хочу, чтобы он просто скрывал теги p под соответствующим заголовком H3, по которому дважды щелкнули. Я пытался использовать «это», но, очевидно, неправильно, так как это не дало желаемого эффекта.
Полагаю, мне нужно каким-то образом выбрать родительский элемент тега H3, по которому щелкнули, и связанный с ним уникальный идентификатор, а затем применить событие скрытия / отображения к любым дочерним тегам p внутри .... какие-либо предложения?
Ура!