私はマスコットの数が少ないこのウェブサイトを作成しており、すべてのマスコットをまばたきさせる「まばたきタイマー」を実装します。
ここでの私の質問は、どの言語でも、まばたきとまばたき自体の間の遅延をどのように実装するか(そしてどのくらいの長さですか?)です(おそらく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());
}
};