2015-06-05 30 views
5

CSS animasyonu kullanarak otomatik kaydırma listesi oluşturmaya çalışıyorum. Şimdi ne varOtomatik kaydırma listesi nasıl oluşturulur

:

.players { 
 
    -webkit-transition: opacity 0.5s ease-out; 
 
    -webkit-animation: autoScrolling 5s linear infinite; 
 
    height: 20em; 
 
} 
 
.players .list-group-item { 
 
    height: 5em; 
 
} 
 
@-webkit-keyframes autoScrolling { 
 
    from { 
 
    margin-top: 0; 
 
    } 
 
    to { 
 
    margin-top: -20em; 
 
    } 
 
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"/> 
 
<div class="row"> 
 
    <div class="col-md-6"> 
 
    <ul class="list-group players"> 
 
     <li class="list-group-item">Player 1</li> 
 
     <li class="list-group-item">Player 2</li> 
 
     <li class="list-group-item">Player 3</li> 
 
     <li class="list-group-item">Player 4</li> 
 
    </ul> 
 
    </div> 
 
</div>

Soru olduğunu, bunun üstünden kaybolur iken Oyuncu 1Oynat 4 altında gösteren yapmak mümkündür? Uçtan uca bir daire gibi.

JavaScript çözümü bir seçenektir.

+0

Oyuncu 4 dom öğesinin konumunu kontrol edebilir misiniz ve eğer bir üst konumdaki oyuncu 1 dom öğesini kopyalar ve oyuncu 4'ün altına ekler misiniz? –

+0

Teşekkürler, bu listeyi yapmaktan kaçınmaya çalışıyorum, liste açısal olarak üretildi. Kubbeyi değiştirmek istemediğim bir şeye yol açabilir .. – lastr2d2

cevap

3

bu Demo.

window.players = function($elem) { 
    var top = parseInt($elem.css("top")); 
    var temp = -1 * $('.players > li').height(); 
    if(top < temp) { 
     top = $('.players').height() 
     $elem.css("top", top); 
    } 
    $elem.animate({ top: (parseInt(top)-60) }, 600, function() { 
     window.players($(this)) 
    }); 
} 
$(document).ready(function() { 
    var i = 0; 
    $(".players > li").each(function() { 
      $(this).css("top", i); 
      i += 60; 
      window.players($(this)); 
    }); 
}); 
+0

bu oldukça havalı .. teşekkürler – lastr2d2

+0

hoş geldiniz. – stanze

0

Bu

$(".list-group-item:first").clone().appendTo($(".list-group")).hide().show('slow'); 
$(".list-group-item:first").hide('slow'); 
setTimeout(function(){ 
    $(".list-group-item:first").remove(); 
},500); 

Umarım yardımcı olur gibi bir şey deneyebilirsiniz deneyin!

İlgili konular