jQuery Knob を使用して時計を作成しようとしています。私の時計は動作しています ( http://jsfiddle.net/Misiu/9Whck/1/ ) が、現在、いくつかの機能を追加しようとしています。
最初はすべてのノブを 0 に設定し、次にanimate
それらの値を現在の時刻にアニメーション化してから、通常のタイマー更新を開始します。
私のコードは次のようになります (デモはこちら: http://jsfiddle.net/Misiu/cvQED/81/ ):
$.when(
$('.h').animate({
value: h
}, {
duration: 1000,
easing: 'swing',
progress: function () {
$(this).val(Math.round(this.value)).trigger('change');
}
}),
$('.m').animate({
value: m
}, {
duration: 1000,
easing: 'swing',
progress: function () {
$(this).val(Math.round(this.value)).trigger('change');
}
}),
$('.s').animate({
value: s
}, {
duration: 1000,
easing: 'swing',
progress: function () {
$(this).val(Math.round(this.value)).trigger('change');
}
})).then(function () {
myDelay();
});
function myDelay() {
var d = new Date(),
s = d.getSeconds(),
m = d.getMinutes(),
h = d.getHours();
$('.h').val(h).trigger("change");
$('.m').val(m).trigger("change");
$('.s').val(s).trigger("change");
setTimeout(myDelay, 1000)
}
when
ノブごとに個別にアニメーションを呼び出す必要がありますが、内部でアニメーションを 1 つだけ使用したい場合data-targetValue
があります。
これはできますか?