3

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

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

这是我的代码:

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

1 回答 1

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

于 2013-07-19T14:49:18.997 回答