hide()不起作用

Tuk*_*nov 0 jquery

我想用jQuery隐藏我的第二个图像,.hide()但在某些情况下该方法不起作用.

这是我的代码:

jQuery的

var one = $('ul li > img')[0];
var two = $('ul li img')[1];
var three = $('ul li img')[2];

$(two).on('click', function(){
  alert('working');
});

two.hide();
Run Code Online (Sandbox Code Playgroud)

HTML

<ul>
  <li><img src="http://img.pixland.uz/u13301f281573m.jpg" alt=""></li>
  <li><img src="http://img.pixland.uz/u13301f281573m.jpg" alt=""></li>
  <li><img src="http://img.pixland.uz/u13301f281573m.jpg" alt=""></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

DEMO

jfr*_*d00 8

$('ul li img')[1]是一个DOM对象,而不是一个jQuery对象,因此它没有.hide()方法.

你可以用这个:

$('ul li img').eq(1)
Run Code Online (Sandbox Code Playgroud)

相反,如果你想要一个jQuery对象.

整个代码块看起来像这样:

var one = $('ul li > img').eq(0);
var two = $('ul li img').eq(1);
var three = $('ul li img').eq(2);

two.on('click', function(){
  alert('working');
});

two.hide();
Run Code Online (Sandbox Code Playgroud)