従来とは異なるリングクロックをキャンバスに描いています。時間は、セカンドリング、セカンドハンド、ミニッツリング、アワーリングで表されます。私はwebkit/mozRequestAnimationFrameを使用して適切なタイミングで描画しています。2番目のリングを変更して、次の1秒にすばやくアニメーション化(125ms〜250ms)し、2次イージング(恐ろしいスナップの代わりに)を使用します。
Raphael JS Clockが2番目のリングをアニメーション化するのと同じように、異なるイージングを使用する点が異なります:http: //raphaeljs.com/polar-clock.html
JSフィドルリンク(Chrome、Firefox、またはWebkit Nightlyで表示する必要があります):
フィドル: http: //jsfiddle.net/thecrypticace/qmwJx/
フルスクリーンフィドル: http: //jsfiddle.net/thecrypticace/qmwJx/embedded/result/
どんな助けでも大歓迎です!
これは近づいていますが、それでも本当にぎくしゃくしています:
var startValue;
if (milliseconds < 500) {
if (!startValue) startValue = milliseconds;
if (milliseconds - startValue <= 125) {
animatedSeconds = seconds - 0.5 + Math.easeIn(milliseconds - startValue, startValue, 1000 - startValue, 125)/1000;
} else {
animatedSeconds = seconds;
}
drawRing(384, 384, 384, 20, animatedSeconds / 60, 3 / 2 * Math.PI, false);
} else {
drawRing(384, 384, 384, 20, seconds / 60, 3 / 2 * Math.PI, false);
startValue = 0;
}