的jQuery选择第n个孩子
问题描述:
比方说,我有一个的jQuery选择第n个孩子
ul
> li
> li
> li
> li
</>
我想李徘徊的时候做的东西,但它必须是略有不同的关于当前所选里数。我可以通过数据切换来完成,但我不想那样使用它。
所以我的问题是我该如何计算我在ul中选择了哪个序列li?
例如:第一,第二,第三
答
试试这样说:
$('li').mouseover(function() {
var _in = $(this).index();
switch(_in) {
case 0:
alert('You hovered the first <li>!');
break;
case 1:
alert('You hovered the second <li>!');
break;
case 2:
alert('You hovered the third <li>!');
break;
}
});
- 工作的jsfiddle:http://jsfiddle.net/xrz93/
+1
牛眼!这完成了这项工作,谢谢! –
+0
也应该考虑鼠标。例如,如果您添加点击,您应该也可以将其删除 – JohanVdR
答
使用.index()
:
$('li').mouseover(function(){
var x = $(this).index();
})
从文档:
如果没有参数被传递给所述的.index()的方法,所述返回值是 的整数,指示在第一元件的 jQuery对象相对于其兄弟元素内的位置。
请注意.index()
是从零开始的。
请问您可以添加您的js代码吗? – Biduleohm
你的意思是像第n个孩子的选择器? http://css-tricks.com/how-nth-child-works/ – Sebsemillia
我想为每一个不同的事物做一些不同的事情,但它与选择之前的事情有关。 Biduleohm - 有点伪代码: $('li.1') - > var x * = 1; $('li.2') - > var x * = 2; $('li.3') - > var x * = 3; $('li.4') - > var x * = 4; –