2016-08-02 63 views
1

無法獲取「不」工作。當我點擊一個列表時,我想使用該索引來定位絕對圖像列表。存儲在列表中的所選背景圖像不會淡出,但其餘部分將會消失。所選的一個將留下。jQuert從未選擇的其他列表中選擇一個eq目標

$('.accordion-item').click(function(){ 
    var index=$(this).index(); 
    var rotationImage = $('.image-rotation li'); 
    rotationImage.not('eq(index)').fadeout; 
    rotationImage.eq(index).fadeIn(); 
}); 

Codepen:http://codepen.io/rezasan/pen/oLPYVr

回答

1

好吧,讓我們來看看......

  1. 你應該寫:eq()不只是eq()
  2. 你有:eq()正確的string
  3. 逃脫 index
  4. 這是.fadeOut()不只是.fadeout

其他一般工作正常。 :)

$('.accordion-item').click(function(){ 
    var index = $(this).index(); 
    var rotationImage = $('.image-rotation li'); 
    rotationImage.not(':eq('+ index +')').fadeOut(); 
    rotationImage.eq(index).fadeIn(); 
}); 

和公正是完整的,你甚至可以做到這一點的單鏈,不需要not()都:

$('.accordion-item').click(function(){ 
    $('.image-rotation li').fadeOut().eq($(this).index()).fadeIn(); 
}); 

Working example.更新codepen

+0

我錯過了+索引+,是的它是fadeOut()。非常感謝@eisbehr。你一直在幫助很大。 –

+0

不客氣,@RezaSan!我剛剛更新了答案,向您展示了一個更短的工作方式。 – eisbehr

+0

這甚至更短。那麼這是否意味着我不必緩存li?我只是害怕瀏覽器會崩潰,如果我不先把它們緩存到變量中?你怎麼看? –