0

10分からカウントダウンする試験シミュレーターを作成しています。00:00に達すると、試験の質問が非表示になり、「Your our of time」というdivが表示されますが、ブラウザーで[更新]をクリックすると10:00に戻ります。しかし、私がやりたいのは、時間切れのdivをもう一度表示することです!Ivは以下のjqueryをいじってみましたが、どこが間違っているのかわかりません。タイマーはCookieに保存されているため、ユーザーが試験内の任意の時点でf5を押すと、Cookieはユーザーがf5を押したときからカウントダウンを続けます。だから私の質問は、これは誰かが私が以下のJQueryを変更して、時刻が00:00の場合に時間外のdivを表示し、ユーザーがブラウザーを更新した場合でも表示し続けるのを助けることができるということです。

   $(function () {
                $('.clock').each(function () {
                    var clock = $(this),
                    theTime = $.cookie('time'),
                    seconds = "00", minutes = 10;
                    if (theTime && theTime != "0:00") {
                        theTime = theTime.split(":")
                        minutes = theTime[0]
                        seconds = theTime[1]
                    }
                    $('.min', clock).text(minutes)
                    $('.sec', clock).text(seconds)
                    var timer = setInterval(function () {
                        var m = $('.min', clock), minutes = +m.text(),
                            s = $('.sec', clock), seconds = -1 + +s.text()
                        if (seconds < 0) {
                            seconds = 59
                            minutes--
                        } else if (minutes <= 0 && seconds <= 0) {
                            clock.html('Timer Complete.');
                            clearInterval(timer);
                            $.cookie('time', '', { expires: -1 })
                            $('#feedbackform').hide();
                            $('#MainContent_DivOutOfTime').toggle();
                            return;
                        }
                        seconds = seconds < 10 ? '0' + seconds : seconds
                        m.text(minutes)
                        s.text(seconds)
                        $.cookie('time', minutes + ":" + seconds, { expires: -1 })
                    },
                1000);
                });
            });

Ivはコードから以下を削除しようとしました

 if (seconds < 0) {
   seconds = 59
   minutes--
 } else

そうすれば、時間をチェックしてからdivを表示しますが、役に立ちません。また、clearIntervalを削除しました...どんな助けでも大歓迎です

4

1 に答える 1

0

この行は Cookie をクリアしませんか? 削除してみてください。

$.cookie('time', '', { expires: -1 }) 
于 2012-04-29T16:49:23.347 に答える