どのようにランダムにLI要素をフェードインするには? (jqueryの)
-
27-09-2019 - |
質問
ページのロードがALL
<li>
要素がフェードインこんにちは、私はホバー効果を持つ<li>
のセットを持って、私がしたいことはされたときにランダムます。
私はそれらをシャッフルしたくない...彼らは意味1,2,3,4,5無傷でその順序を維持する必要があります。私はちょうどそれらがランダムにページに表示され、そこに滞在したい。
解決
あなたはこのような何かを行うことができます:
var v = $("#blocks > li").css('visibility', 'hidden'), cur = 0;
for(var j, x, i = v.length; i; j = parseInt(Math.random() * i), x = v[--i], v[i] = v[j], v[j] = x);
function fadeInNextLI() {
v.eq(cur++).css('visibility','visible').hide().fadeIn();
if(cur != v.length) setTimeout(fadeInNextLI, 50);
}
fadeInNextLI();
あなたはにここにあなたのhtml /イメージでデモを見ることができます。ソートアルゴリズムは、 jsquaresするます。
で使用したのと同じ1のためのヨルダンBoeschの功績これは、すべてのそれらを隠すランダムA次の :hidden
の1でグラブ、それをフェードしますで、及び50msの後、ランダムっぽいフェードイン効果を作成する、次のいずれかを起動します。必要に応じてちょうどあなたがしたい場合は .fadeIn()
のに時間を渡すも、時間を調整します。これは、それがうまくとして行うの際に影響をキューイングを停止します。
所属していません StackOverflow