$('*')。index(currentElement)会给出一个唯一的数字吗?

时间:2009-04-15 16:02:28

标签: javascript jquery html dom

是$('*')。index(currentElement)会给出一个唯一的数字吗?我问,因为我无法理解JQuery docs

中的索引方法。

3 个答案:

答案 0 :(得分:2)

“是”。 (我应该限定这个,只要索引的上下文总是整个DOM)否则,正如另一个答案所述,答案是否定的。

它将为您提供所有DOM元素中元素的索引。如果DOM发生变化,它将不再有效。

需要像这样的索引的原因必须是非常异常,我强烈怀疑有更好的方法来做你想要完成的事情。

答案 1 :(得分:2)

是的,它将返回您可以在jQuery集合中找到元素的索引 - 例如

var allElements = $("*");
var index = allElements.index(someElement);

if(allEmenets[index] == someElement){
  alert("Found it!");
}

答案 2 :(得分:1)

索引方法将搜索当前元素的索引。我可以在代码中解释得更好:

 <div id='div0'></div>
 <div id='div1'></div>
 <span id='span0'></span>
 <div id='div2'></div>  

 $('div').index( $('#div0')[0] ); //index is 0 as it is the first of all divs
 $('*').index( $('#div0')[0] ); //index is 0 as it is the first of all elements
 $('span').index( $('#span0')[0] ); //index is 0 as it is the first of all spans
 $('*').index( $('#span0')[0] ); //index is 2 as it is the third of all elements