我想在jQuery操作中引用和使用元素的索引。
这样的事情:
$('a').attr('data-index', ?magic?);
预期结果是:
<a data-index='0' ....>....</a>
<a data-index='1' ....>....</a>
//....
<a data-index='length-1' ....>....</a>
虽然使用显式的for循环来完成这个操作是微不足道的,但我只是想知道是否有更有效的方法。
答案 0 :(得分:1)
元素的索引不是真正需要放入属性,因为您可以在循环中使用dom集合轻松获取索引或使用index()
方法
我建议不要添加属性,因为它可以随任何dom操作而改变并抛弃所有这些属性值
var $links = $('a');
$links.click(function(){
alert( $links.index(this) );
});
$links.each(function(index){
console.log(index);
});
$links.text(function(index, oldText){
return oldText + ' my index is ' + index;
});