2016-08-02 7 views
1

"not"を働かせることはできません。リストをクリックすると、そのインデックスを使用して絶対イメージのリストをターゲットにしたいと考えています。選択された背景画像は、リストに保存されてもフェードアウトされませんが、残りは消えます。選択されたものが残ります。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()
  2. あなたが:eq()string正しく
  3. indexをエスケープする必要が :eq()を書くべきではありません
  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

私は+ index +を逃しました。そして、それはfadeOut()です。大変ありがとう@eisbehr。あなたは大きな助けをしてきました。 –

+0

よろしくお願いします。@RezaSan!私はちょうどあなたの仕事を行うためのさらに短い方法を示すために私の答えを更新しました。 – eisbehr

+0

これはさらに短くなっています。それで私は李にキャッシュする必要はないのですか?最初に変数にキャッシュしないと、ブラウザがクラッシュする恐れがありますか?どう思いますか? –

関連する問題