当前第n名:父母的孩子

时间:2016-07-12 07:42:05

标签: javascript jquery dom

有没有办法找出点击div的nth:child的{​​{1}}?



div

$('#divStatus div').on('click', function() {
  console.log($(this).parents().eq())
})

#divStatus div {
  display: inline-block;
  background: red;
  width: 100px;
  height: 100px;
}




3 个答案:

答案 0 :(得分:3)

是的,使用jQuery的index函数。 "../.."从0开始,而index是从1开始的,所以你必须允许这样做。

:nth-child
$('#divStatus div').on('click', function() {
  console.log($(this).index() + 1);
})
#divStatus div {
  display: inline-block;
  background: red;
  width: 100px;
  height: 100px;
}

答案 1 :(得分:1)

使用index()函数。

请参阅此处jsfiddle

HTML:

<div id="divStatus">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

CSS:

#divStatus div {
  display: inline-block;
  background: red;
  width: 100px;
  height: 100px;
}

JS代码:

 $('#divStatus div').on('click', function() {
 var nth = $(this).index() + 1;
 console.log(nth)
})

index()0开始,在您的情况下,您需要从1nth-child(1))开始,这就是您将{1}}添加1的原因

详细了解index() here

答案 2 :(得分:1)

使用index()函数获取当前点击的div的索引:

索引将基于零,因此您需要为其添加+1才能获得正确的索引。

.index()
$(document).ready(function() {
  $('#divStatus div').click(function() {
      var index = $(this).index() + 1;
      console.log(index);
  });
});
#divStatus div {
  display: inline-block;
  background: red;
  width: 100px;
  height: 100px;
}