-3
<HEAD>
<SCRIPT LANGUAGE="JavaScript">

var time_left = 50;
var cinterval;
var timestatus=1;

function time_dec(){
    time_left--;
    document.getElementById('countdown').innerHTML = time_left;
    if(time_left == 0){
        clearInterval(cinterval);
    }
}

function resumetime()
{
    //time_left = 50;
    clearInterval(cinterval);
    cinterval = setInterval('time_dec()', 1000);
}

function defaultstart()
{
    time_left = 50;
    clearInterval(cinterval);
    cinterval = setInterval('time_dec()', 1000);
}

function stopstarttime()
{
    if(timestatus==1)
{
    clearInterval(cinterval);
    document.getElementById('stopbutton').value="Start";
    timestatus=0;
}
    else
{
    clearInterval(cinterval);
    cinterval = setInterval('time_dec()', 1000);
    document.getElementById('stopbutton').value="Stop";
    timestatus=1;
}
}

defaultstart();

</SCRIPT>
</HEAD>

<body>
Redirecting In <span id="countdown">50</span>.
<INPUT TYPE="button" value="stop" id="stopbutton" onclick="stopstarttime()">
</body>
</HTML>


私は初心者です。アンケートページは10ページあります。このタイマーがページの変更/更新時に更新されない可能性はありますか? また、ユーザーごとに異なる方法で機能する必要があります。可能であれば、私を助けてください。

4

1 に答える 1

0

タイマーが終了するタイムスタンプを Cookie または localStorage に保存できます。次に、この Cookie を使用して正しいカウンターを表示します。このソリューションは 100% 安全ではありません (ユーザーは、開発者コンソールを介して Cookie/localStorage を変更する方法を知っていれば、この Cookie の値を変更してカウンターを長持ちさせることができます)、これが悪い状況では使用しないでください。 .

var timeLeft = 50;
if( window.localStorage ) {
  if( !localStorage.getItem( 'endTimer' ) ) {
    localStorage.setItem( 'endTimer', new Date().getTime() + (timeLeft * 1000) );
  }
}

残りの時間 (ミリ秒) はlocalStorage.getItem( 'endTimer' ) - new Date().getTime().

于 2013-08-01T11:36:59.283 に答える