我正在用很少的吉祥物创建这个网站,我将实现一个“眨眼计时器”,让每个吉祥物都眨眼。
我的问题是:我如何在任何语言上实现(以及它是多长时间?)闪烁和闪烁本身之间的延迟(我可能会使用 Javascript,但现在没关系)。
有没有关于“眨眼算法”之类的资源?
编辑:我知道如何使用 setTimeout 和 setInterval,我的问题更多是关于算法而不是实现本身。
最后结果:
var blink = {
delay: function() {
return Math.random() * 8000 + 2000;
},
duration: function() {
return 100 + Math.floor(Math.random() * 100);
},
blinkAgain: function() {
return (Math.random() < .2);
},
betweenBliks: function() {
return blink.duration() / 2;
}
};
$.fn.blink = function(continueBlinking) {
var $element = $(this);
// Star the blink
$element.addClass('blink');
// Finish the blink
setTimeout(function() {
$element.removeClass('blink');
// Change of blinking again
if (blink.blinkAgain()) {
setTimeout(function() {
$element.blink(false);
}, blink.betweenBliks());
}
}, blink.duration());
// Continue blinking?
if (continueBlinking) {
setTimeout(function() {
$element.blink(true);
}, blink.delay());
}
};