3

HTML リスト内のアイテムの位置を知る必要があります。

<ul>
  <li>first</li>
  <li>second</li>
  <li>third</li>
</ul>

$('ul').on("click", function(event){
  var target = event.target;
})

それでli、イベントのターゲットとして最初に取得したとき。0アイテムの位置の結果を取得するにはどうすればよいですか。私が考えることができる唯一の方法は、すべてのアイテムを反復してイベントターゲットと比較することですが、これを解決するより良い方法があるかどうか疑問に思います。

4

3 に答える 3

3

あなたが使用することができます:

$('ul').on("click", function(event){
  var target = event.target,
      index = $(target).index();
  console.log(target, index);
})

JS フィドルのデモ

参照:

于 2013-03-04T14:32:25.913 に答える
2
var listItem = $(event.target);
alert('Index: ' + $('ul > li').index(listItem));
于 2013-03-04T14:32:27.480 に答える
1
$('ul li').on("click", function(){
var index = $(this).index();
alert(index);
})

http://jsfiddle.net/6QZbT/

于 2013-03-04T14:36:38.327 に答える