[英]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.