我有一个jQuery children
数组,我保存在变量中:
var panels = panelsHolder.children('div');
现在,我想只解决其中一个孩子,我知道它的索引,所以我这样做:
panels[currentpanel].addClass('show')
但是我得到一个错误,因为panels[currentpanel]
返回的对象不是jQuery对象,它是一个平面DOM元素。所以我被迫将它转换为jQuery对象 - 就像这样:jQuery(panels[currentpanel])
- 但是必须有一种方法可以将该对象作为数组中的jQuery对象。
我该怎么做?
答案 0 :(得分:3)
你现在必须使用eq()来获取jQuery对象而不是DOM。
panels.eq(currentpanel).addClass('show')
答案 1 :(得分:1)
问题是当你从currentpanel
获得panels
索引时,你得到了普通的DOM对象,而不是jQuery对象。你可以用$()
包围它来解决这个问题。
$(panels[currentpanel]).addClass('show');
编辑:这看起来像快速而肮脏的方式,因为您需要再次将对象“强制转换”为jQuery对象。 eq()建议Adil是可行的方法。
panels.eq(currentpanel).addClass('show')
答案 2 :(得分:1)
你可以在jQuery中使用.eq(index).addClass('show')