2016-10-18 6 views
-1

これらのアイコンを一度に赤色に変更したいが、トリックは、一度に1つだけ赤くし、次のものが赤に変わると白に戻したい。私はこれを得る方法について空白を描いています。 jQueryまたはバニラは問題ありません。アイコンセット間の色をループする

HTML(アイコンはデフォルトで白):

<div class="icon-row"> 
    <i class="fa fa-caret-right" aria-hidden="true"></i> 
    <i class="fa fa-caret-right" aria-hidden="true"></i> 
    <i class="fa fa-caret-right" aria-hidden="true"></i> 
</div> 

EDIT:色の変化をトリガ

何も、私はそれが間隔でプロセスを繰り返しておきたいです。

+0

は、色の変化をトリガしているものについての詳細情報を与えるために役立つだろう。クリック、タイマーなど – itsthejash

+2

このように - > https://jsfiddle.net/adeneo/zr7k4257/ – adeneo

+0

@adeneo correct、tysm –

答えて

1

あなたは再帰関数でそれを行うことができ、タイマー

var els = $('.icon-row .fa'), 
 
    delay = 500; 
 

 
(function rec(el, time) { 
 
    el.delay(time).queue(function() { 
 
    \t var f = els.css('color','black').first(); 
 
    \t var n = $(this).css('color','red').next(); 
 
     
 
     rec(n.length ? n : f, time); 
 
     $(this).dequeue(); 
 
    }); 
 
})(els.first(), delay);
* {font-size: 30px; font-weight: bolder;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="icon-row"> 
 
    <i class="fa fa-caret-right" aria-hidden="true">A</i> 
 
    <i class="fa fa-caret-right" aria-hidden="true">A</i> 
 
    <i class="fa fa-caret-right" aria-hidden="true">A</i> 
 
</div>

関連する問題