【jquery】index,notの使用方法について【初学者】
Q&A
Closed
解決したいこと
以下⓵⓶を実現したい
⓵Q10の子要素をクリックした時に、
その要素のインデックスと等しいid="q11"の子要素にis-bigというクラスを追加したい。
⓶⓵の処理と同時にそれ以外のクラスからis-bigを削除したい。
※インデックスの一致する要素だけにis-bigがついている状態にしたい
発生している問題・エラー
⓵は実現できるが、⓶を同時に処理することができない。
該当するソースコード
-html-
<ul class="u-mbm lists" id="jsi-q10">
<li>Q10_1</li>
<li>Q10_2</li>
<li>Q10_3</li>
</ul>
<ul class="u-mbm lists" id="jsi-q11">
<li>Q11_1</li>
<li>Q11_2</li>
<li>Q11_3</li>
</ul>
--javascript--
$("#jsi-q10")
.find("li")
.on("click", function () {
let orderNumber = $(this).index();
$("#jsi-q11").find("li")
.eq(orderNumber).addClass("is-big");
$("#jsi-q11").find("li")
.not(eq(orderNumber).removeClass("is-big"));
});
--css--
.is-big {
font-size: 25px;
}
### 自分で試したこと
「eq()」「not:」の使用方法について調べました。
not:を使って『変数:orderNumber以外のものを指定する』ことができれば
解決できる問題ではないかというところまで整理できましたが、具体的な方針が分からず質問に至りました。調べる力不足で申し訳ございません。
### 整理できたこと
1.removeClassを使用して、適切なセレクタを指定する
2.jsi-q11.find("li") かつ orderNumber以外のindexを1で指定する
今回初めて質問させていただく初学者です。
分かりずらい点等あれば厳しくご指摘いただければと存じます。
0