0

やや 2 部構成の質問:

テキスト形式でカウントアップタイマーを許可するためにを呼び出す javascript をここに実装するにはどうすればよいでしょうか#refresh。たとえば、0 秒から開始して最大 3 分実行し、その後リフレッシュしてゼロから開始するとします。これにより、id の特定の div がリフレッシュされます。入っていますか?

$(document).ready(function () {
    var interval = 180000; // set for 3 minutes
    var refresh = function() {
        $.ajax({
            url: "servers.php",
            cache: false,
            success: function(html) {
                $('#refresh').html(html);
                setTimeout(function() {
                    refresh();
                }, interval);
            }
        });
    };
    refresh();
});

<div id="refresh"><p>Last Scanned: ???</p></div>

また、私はまだ AJAX にかなり慣れていないので、上記のコードがおかしかったり間違っていたりする場合は、私に知らせてください。

4

1 に答える 1

2

OK so this is the whole counter with formatting, without AJAX:

$( document ).ready( function(){
   setTime(180001); // set for 3 minute interval scans
});

function setTime(interval){
    setTimeout(startCounter(interval, 0),interval);
}
function startCounter(target, current) {
    var mins, secs;
    if (current >=60) {
        mins = Math.floor(current/60);
        secs = current - (mins*60);
        $('#refresh p').html('Last Scanned: '+ mins + 'm ' + secs + 's ago');
    }else $('#refresh p').html('Last Scanned: '+ current + 's ago');
  if (current >= target/1000) {
    setTime(180001);
    return;
  }
  setTimeout(function(){startCounter(target, current+1);}, 1000);
}

jsFiddle example: http://jsfiddle.net/vcLhy/7/

于 2013-10-18T02:17:15.983 に答える