私は.indexに関する助けが必要です(私が望むものを達成するためにいくつかの方法を試してみましたが、残念なことに、失敗して頭痛がありました。おそらく誰かが私を正しい方向に向けることができます。JQueryに問題がある.index
// on click show the associated tab list
$('.menutabs li').click(function(i) {
i.preventDefault();
//var index=$('.menutabs li').index(this);
var index=$('.menutabs li').eq();
var parent=$('.menutabs li:eq('+index+')').parent().index();
alert('INDEX MENUTABS LI A:'+index+' INDEX PARENT:'+parent);
$('.menutabs li:eq('+index+') a').removeClass('current-page-item');
$('.menutabs li:eq('+index+') a').toggleClass('current-page-item');
}
警告一部正しいインデックス番号のために示されている:
<ul class="menutabs slideshow">
<li><a href="" class="current-page-item">Latest Addition</a></li>
<li><a href="">Most Download</a></li>
<li><a href="">Most Watch</a></li>
<li><a href="">Top Rated</a></li>
</ul>
<!-- some other html here -->
<ul class="menutabs">
<li><a href="" class="current-page-item">Genres</a></li>
<li><a href="">Years</a></li>
</ul>
<!-- some other html here -->
<ul class="menutabs">
<li><a href="" class="current-page-item">Top Rated</a></li>
<li><a href="">Popular</a></li>
</ul>
これは、JSコードがある:それは)
私は、リストのこの種(タブとしてその行為を)持っていますancホーリンク。しかし、親インデックスでは、正しいインデックス番号を与えるが、最後のもの(3番目のmenutab)ではなく、1番目と2番目の.munutabsしか見えない。
しかし、CSS境界線を変更しようとすると、完全に動作します(.menutabs境界線が指定された赤色に変更されています)。それは本当に私を混乱させます。
実際には、私がエラーをキャッチしようとするテストとしてのみアラートとCSSの境界部分は、ユーザーがそのクラス内のアンカーリンクをクリックしたときに親.menutabsのインデックス番号を検出する必要があります。だから私は、その中の他のliのクラス名を変更することができます。
は、誰もが
ありがとうKarpie、私はjqueryコードを編集しました。私が必要とするのは、現在のページアイテムのクラスを変更して、そのli内のアンカーリンクの1つのみがそのクラスを持つようにすることです(アクティブなタブとして機能します)。 – fulamax
解答のために私の答えを編集します。 – sevenseacat
もう一度私が必要とするもののために完璧に動作するkarpieに感謝します。コードは2行必要です:) – fulamax