[英]How to randomise and mimic a rollover in jquery?
我有一個JQuery腳本,它充當簡單的圖像翻轉並具有良好的淡入淡出效果。
這是當前正在運行的腳本的測試版本-http://fi-testing.co.uk/SO/rubix-cube.html
如您所見,有9個區塊,客戶希望輪流隨機發生(無懸停)以產生波動/脈動效果。
如何使用JQuery或php實現此目標?將鼠標懸停會破壞隨機性並像正常情況那樣嗎?
抱歉,如果不清楚。
謝謝你的幫助。
擔
無需過多編寫代碼,就可以通過Math.random()
創建隨機性
因此,如果您有一個多維數據集整體的數組(索引為0-8),則可以使用
var randomNumber = parseInt( Math.random() * 9 );
var randomCube = cubes[randomNumber];
您可以使用setInterval
使其每隔x ms重復一次
function randomlyChangeCubes() { ... }
...
setInterval( randomlyChangeCubes, 2000 );
你可以使用jQuery trigger
調用hover
手工效果,但我會說這將會是更具可讀性提取你有代碼hover
給您無論從調用函數hover
和randomlyChangeCubes
。
話雖如此...完全隨機地執行此操作可能不會使其看起來像波紋/脈動...
您需要做的事情:
setTimeout / setInterval =在設置的時間調用“效果”函數隨機數=使用此函數隨機調用所需的元素,例如#box1,#box2等。
我認為就是這樣-應該相當簡單。
實現很酷的隨機性可能很棘手。 Math.random()
方法根據均勻分布生成偽隨機值(即,范圍內的所有值具有相同的概率),並且看起來不太好。
我並不期望,我無法告訴您哪種分布會產生更好的結果,但是您可以嘗試使用正態分布和泊松分布:
http://www.ciphersbyritter.com/JAVASCRP/BINOMPOI.HTM (有關代碼,請參見頁面源代碼)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.