我发现自己开始写这个:
$($("a-selector-which-returns-multiple-objects")[index]).SomejQueryFunctionForExampleShow()
因为我有一个返回多个对象的查询,然后[index]
运算符返回DOM对象,而不是jQuery对象,所以我将它转换回外部的jQuery对象$()
.
这工作正常,但看起来不够优雅,我觉得我错过了关于索引到jQuery对象集的一些东西 - 这样做的正确方法是什么?
在您描述的情况下,您根本不必索引元素.由于JQuery链接其命令的方式,您将在前一个选择器返回的所有元素上运行任何命令.
$(document).ready(function() { $("a").hide(); });
如果它需要是特定元素,您应该为其选择一个唯一ID:
$(document).ready(function() { $("#my-unique-id").hide(); });
如果要将特定索引作为JQuery对象返回,则应使用eq函数.
$(document).ready(function() { $("a").eq(0).hide(); });
但同样,在您的情况下,您根本不需要索引.