将hide应用于Array中的第一个元素

时间:2013-07-19 14:48:41

标签: javascript jquery

我正在尝试将效果应用于数组中的第一个元素,但我收到了这个错误:

$(...)[0].hide is not a function

这是我的代码:

var contain = $('.commentFormContainer');
(contain.length >= 2 ) ? contain[0].hide();

1 个答案:

答案 0 :(得分:8)

您需要使用eq()来获取jQuery对象。你不能使用索引器,因为它会给你DOM对象,你不能在它上面调用hide。

contain.eq(0).hide(); 

或者您可以在选择器中使用:eq

$('.commentFormContainer:eq(0)').hide();
  

请注意,由于JavaScript数组使用基于0的索引,因此这些   选择者反映了这一事实。这就是$('。myclass:eq(1)')选择的原因   文档中的第二个元素是类myclass,而不是   首先。相反,:nth-​​child(n)使用基于1的索引来符合   到CSS规范,Reference