1

素敵なフェード効果のある単純な画像ロールオーバーとして機能するJQueryスクリプトがあります。

これが現在動作中のスクリプトのテストバージョンです-http://fi-testing.co.uk/SO/rubix-cube.html

ご覧のとおり、9つのブロックがあります。クライアントは、ロールオーバーがランダムに(ホバーなしで)発生して、波紋/脈動効果を作成することを望んでいます。

これはJQueryまたはphpのいずれかでどのように達成されますか?また、ホバーするとランダム化が中断され、通常どおりに機能する可能性がありますか?

不明な点がある場合は申し訳ありません。

助けてくれてありがとう。

ダン

4

3 に答える 3

1

コードにあまり踏み込むことなく、次の方法でランダム性を作成できます。Math.random()

したがって、0〜8のインデックスが付けられたキューブ全体の配列がある場合は、次を使用できます。

var randomNumber = parseInt( Math.random() * 9 );
var randomCube = cubes[randomNumber];

これを使用して、 xミリ秒setIntervalごとに1回繰り返すことができます

function randomlyChangeCubes() { ... }

...

setInterval( randomlyChangeCubes, 2000 );

jQueryを使用triggerしてエフェクトを手動で呼び出すこともできますが、からとからの両方で呼び出す関数にhoverコードを抽出する方が読みやすいと思います。hoverhoverrandomlyChangeCubes

言われていることすべて...これを完全にランダムに行うと、おそらく波打つ/脈動しているようには見えません...

于 2010-07-01T10:03:50.653 に答える
0

かっこいいランダムさを実現するのは難しい場合があります。このMath.random()方法では、一様分布から疑似乱数値が生成されます(つまり、範囲内のすべての値が同じ確率になります)。これは見栄えがよくありません。

私は期待していません。どの分布がより良い結果をもたらすかはわかりませんが、通常の分布とポアソン分布を試すことができます。

http://www.ciphersbyritter.com/JAVASCRP/BINOMPOI.HTM(コードについてはページソースを参照)

于 2010-07-01T10:16:23.750 に答える
0

必要なもの:

setTimeout / setInterval =設定された時間に「効果」関数を呼び出す乱数=これを使用して、必要な要素をランダムに呼び出します(例:#box1、#box2など)。

私はそれだと思います-かなり簡単なはずです。

于 2010-07-01T09:59:49.860 に答える