-5

ユーザーが jquery を使用して特定のページを更新した回数をカウントする必要があります。ページには、ページがリロードされるたびにインクリメントされる静的カウンターが必要です。ユーザーが前のページの別のページカウンターに移動した場合、セッションを使用したくありませんが、jquery のみを使用してこれを行います。助けてください。

よろしくお願いします...

4

1 に答える 1

2

おそらくこれを行うことができるいくつかのハックがあります。解決策がちょっと醜いので、最初にあなたが本当に解決しようとしているユーザーの問題は何かを尋ねます。

疑似コードでは、次のようにします。

  1. ページが読み込まれると、reloadCnt の Cookie を取得し、lastActive タイムスタンプを含む Cookie を取得します。
  2. タイムスタンプが X 分前よりも長かった場合は、reloadCnt を 1 から開始します (このページが読み込まれる前に、ページはアクティブではありませんでした)。
  3. reloadCnt > 1 の場合、現在の時刻をタイムスタンプとして新しいカウントを Cookie に書き戻します。
  4. 次に、ページで、Y 分 (Y は X の約半分) ごとに実行されるタイマーを開始します。そのタイマーでは、最後のリロードの Cookie 時間を更新し続けますが、カウントは更新しません。このタイム スタンプは、ページがアクティブになったばかりか、ページが読み込まれずにブラウザが一定期間経過したかを次のリロードで示します。

一般的な考え方は、reloadCnt を Cookie に保持し、毎回インクリメントするというものです。その部分は簡単です。

また、Cookie にタイムスタンプを保持します。タイムスタンプには基本的に、ページがこのブラウザーで最後に実行された時刻が含まれます (ページはタイムスタンプを継続的に更新しているため)。タイムスタンプが古い場合、ユーザーのブラウザはこのページを表示しているだけではないため、これは久しぶりのページである必要があります。タイムスタンプが新しい場合、これはおそらく別のリロードです。

于 2012-04-29T08:22:19.517 に答える