0

スコアが最初から最後までの経過時間である単純なjQueryゲームを作成しています。現在、経過時間を単純なdivに追加しています:

var elapsedTime = new Date().getTime() - startTime;
$('.score').html('"<div>" + elapsedTime + "</div>"');   

最新の elaspedTime を以前の elaspedTime と比較して、より速い時間/より低い数値を維持する方法はありますか?

4

3 に答える 3

0

前回の時間を読み戻して、新しく計算された時間と比較する必要があります。

var current_time = $('.score').text();
var elapsedTime = new Date().getTime() - startTime;
if (elapsedTime < current_time) {

   // do stuff
}
于 2012-05-22T07:34:45.277 に答える
0

2 回のうち最低の値を返します。

Math.min(lastElapsedTime, newElapsedTime)

あなたのコードのためにあなたはおそらく望むでしょう...

elapsedTime = Math.min(elapsedTime, new Date().getTime() - startTime);
于 2012-05-22T07:28:05.300 に答える
0

これらのスコアを配列に追加してから、並べ替えます。

var scores = [];
scores.push(elapsedTime1);
scores.push(elapsedTime2);
scores.push(elapsedTime3);

//sort it
scores.sort();
// if you want reverse order
scores.reverse();

//get the max and min, but if you have sorted already, that's not necessary.
var min = Math.min.apply(null, scores);
var max = Math.max.apply(null, scores);
于 2012-05-22T07:29:17.667 に答える