リストの特定クラスが何番目にあるのかの取得方法をご紹介。
var number = $('.sample').index('ul li');
「$(‘.sample’)」に番号を取得したい特定のクラスやIDを書いて、「.index(‘ul li’)」には、特定クラスが含まれるリストを書きます。
押されたリスト番号を取得する「.index(this)」と書き方が似ているので覚えやすかったり、こんがらがったするね。
実際に使ってみたデモを用意していますので、リストをポチポチしながら取得している様子を確認してください。
DEMO
- HOME
- 利用方法
- 料金
- お問い合わせ
0番目にsampleクラスが付いています。
デモのソースも貼っておきますので、理解の参考になれば嬉しいです。
HTML
<div class="demo">
<ul>
<li class="sample">HOME</li>
<li>利用方法</li>
<li>料金</li>
<li>お問い合わせ</li>
</ul>
<p><span class="num">0</span>番目にsampleクラスが付いています。</p>
</div>
CSS
.demo ul {
width: 100%;
height: 72px;
margin: 0;
padding: 0;
box-shadow: 0 16px 24px -22px rgba(0,0,0,.4);
text-align: center;
}
.demo ul li {
list-style: none;
display: inline-block;
margin: 0;
padding: 20px 0;
width: 115px;
text-align: center;
vertical-align: top;
cursor: pointer;
transition: .3s;
}
.sample {
color: #03c6b9;
font-weight: bold;
border-bottom: 2px solid #03c6b9;
cursor: default !important;
}
.demo > p {
margin: 40px auto;
text-align: center;
font-size: 20px;
}
.num {
color: #03c6b9;
font-weight: bold;
margin-right: 4px;
}
jQuery
$('.demo li').on('click', function () {
$(".demo li").removeClass("sample");
$(".demo li").eq($(".demo li").index(this)).addClass("sample");
var index = $('.sample').index('.demo ul li'); // sampleクラスが付いているindex番号を取得。
$(".num").text(index);
});







コメント