私は使用することをお勧めします:
$('.questionContainer').eq($(this).index()).fadeIn(500);
これは、次のように、それぞれが表示されるはずa
の要素に対応する兄弟を持つ(または他の要素)をクリックしていることを前提としています。.questionContainer
<div id="wrapper">
<div class="questionContainer">
<!-- question one -->
</div>
<div class="questionContainer">
<!-- question two -->
</div>
<div class="questionContainer">
<!-- question three -->
</div>
<div class="questionContainer">
<!-- question four -->
</div>
<div class="questionContainer">
<!-- question five -->
</div>
</div>
<div id="buttons">
<a href="#">Question 1</a>
<a href="#">Question 2</a>
<a href="#">Question 3</a>
<a href="#">Question 4</a>
<a href="#">Question 5</a>
</div>
クリックしている要素が兄弟でない場合は、index()
メソッドにセレクターを渡して正しいインデックスを見つけることができます。これは、クラス名、要素タイプ、親などに基づく任意の CSS タイプ セレクターにすることができます。
コードの最初の部分が機能しなかった、または機能しなかった理由は、(and ) が一度に 1 つの要素/DOM ノードしか参照できないため、( and ) には常に (の暗黙的なインデックスがある1 のセット内の最初で唯一の要素)。$(this)
this
this
$(this)
0
参考文献: