2つの順序付けられていないリストが2つあり、同じ量のアイテムがあります。だから、順序付けられていないリスト#2のアイテムがすべて隠されていると仮定しよう。順序付けられていないリスト#1のアイテムをクリックすると、それらを表示させる唯一の方法です。index()を持つjQueryターゲティング要素
ので、基本的には今
<ul class="list1">
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
<li>item 4</li>
</ul>
<ul class="list2">
<li class="hide">item 1</li>
<li class="hide">item 2</li>
<li class="hide">item 3</li>
<li class="hide">item 4</li>
</ul>
私はこれを実現しようとしている方法は、index()
メソッドを使用しているが、私は正常にこのコードにアプローチするかどうかはわかりません。
これは私の考えです。そう
$('.list1').on('click', 'li', function() {
$('.list2 li').index($(this).index()).toggleClass('active');
});
あなたはそのラインのアイテムのインデックスは、ある.list2
に私がターゲットにしたい指標である私がいる問題は、そのとき、私が何であれ、.list1
に行項目をクリックしてくださいコンソールログ、私は奇妙なインデックス番号を取得しています。最初の広告申込情報は0ではなく2として表示され、2番目の広告申込情報のインデックスは-1になります。
何が間違っていますか?たくさん私は確信しています。
よろしくお願いします。
、これを試してみてください。 https://api.jquery.com/eq/ –
[jQuery.index](https://api.jquery.com/index/)は常にインデックスを返します。あなたは[jQuery.eq](https: /api.jquery.com/eq/)。指定されたインデックスに一致する要素のセットを[...]に減らします。 –