获得这样的元素后
$('.votes > a > img').get(0)
我无法呼叫closest('img')
。例如
$('.votes > a > img').get(0).closest('img')
我得到一个错误,说没有名为'最近'的方法。
但以下的工作
$('.votes > a > img').closest('img') // removed .get(0)
有人可以解释一下这是为什么吗?
我真的不明白,特别是当我把它归为this on jsfiddle时。在jsfiddle版本中,有一个对('li.item-a').closest('ul').css('background-color', 'red');
的调用对我而言似乎与我的$('.votes > a > img').get(0).closest('img')
答案 0 :(得分:1)
将get
替换为eq
,请参阅更新的jsfiddle:
基本上,eq
返回一个可以重用的jQuery对象,但get
为你提供了一个DOM元素,它不是jQuery,不允许你调用closest
或其他jQuery方法就可以了。有关get
与eq
差异的更多答案,请参阅此SOq: