0
<ul>
    <li><div><a href="#">line a</a></div></li>
    <li><div><a href="#">line b</a></div></li>
    <li><div><a href="#">line c</a></div></li>
    <li><div><a href="#">line d</a></div></li>
    <li><div><a href="#">line e</a></div></li>
</ul>

<li>必要な出力は、タグの位置(カウント)を取得することです。私index()はこれに使用することはできません。たとえば、「行a」をクリックすると、取得する必要のある出力は「1」になり、「行b」の場合は「2」が必要になります。等々。

index()を使用できません。

4

3 に答える 3

3

インデックスを使用できます:

$('li a').click(function(){
   console.log('index is ' + ($(this).closest('li').index()+1));
});
于 2013-03-26T08:49:19.570 に答える
0

.index()クリックされた要素に対して使用すると、正常に機能するはずです。$('a').index(this)

サンプルコード:

$(document).ready(function () {
    $('a').on('click', function() {
        alert($('a').index(this)+1);

        return false;
    });
});

jsfiddle: http: //jsfiddle.net/vjV7Y/10/

注:を追加したのは、ではなく最初の要素を返す+1ためです。index()01

于 2013-03-26T08:56:18.023 に答える
0
$('a').click(function(){
   var li = $(this).parent().parent(); //current li
   var ul = li.parent().children(); //all ul children li's
   alert('Index: ' + ul.index(li));
});
于 2013-03-26T09:15:34.073 に答える