1

ログインページにいるときに、 gmailが「たくさんのスペース」段落に空き容量を表示するケースを知っていると思います。そのページで実行されているカウンターがあり、それがどのように機能するか知りたいです。ポインタ、リンク、チュートリアル、読み物、説明を教えてもらえますか?

4

3 に答える 3

2

そのページのソースを見ると、1 秒に 1 回だけ数値を更新する単純な JavaScript 関数であることがわかります。魔法は一切使わず、実際のデータではなく、ただの見積もりです。

于 2010-12-25T18:16:19.383 に答える
1

これはそれを担当するコードです。バイト数にマッピングされている時間計算に基づいているようです。

function updateQuota() {
  if (!quota_elem) {
  return;
  }
  var now = (new Date()).getTime();
  var i;
  for (i = 0; i < CP.length; i++) {
    if (now < CP[i][0]) {
      break;
    }
  }
  if (i == 0) {
    setTimeout(updateQuota, 1000); 
  } else if (i == CP.length) {
    quota_elem.innerHTML = CP[i - 1][1];
  } else {
    var ts = CP[i - 1][0];
    var bs = CP[i - 1][1];
    quota_elem.innerHTML = format(((now-ts) / (CP[i][0]-ts) * (CP[i][1]-bs)) + bs); 
    setTimeout(updateQuota, 1000); 
  } 
} 

var PAD = '.000000';
于 2010-12-25T18:18:03.630 に答える
0

ここで素敵なスライドショーを見つけることができます

http://www.slideshare.net/kuchmuch/gmails-quota-secrets

それがどのように機能するかを詳しく説明します。

前述のように、ティッカーがカウントする事前定義されたサイズに設定された日付です。

于 2010-12-25T18:20:15.073 に答える