首先在10秒内调用javascript函数,然后每25秒调用一次[jQuery]

时间:2017-06-30 04:58:32

标签: javascript jquery

这是我的代码:

setInterval(function() {
    $.ajax({
        type: "GET",
        url: "someurl",
        dataType: "json",
        success: function(data) {
          //Some code
        }
    });
}, 25 * 1000);

上面的代码每25秒调用一次ajax方法。但是我第一次需要它在10秒内然后每25秒调用一次。

所以我跟着this

并将我的代码更改为:

setTimeout(function() {
    setInterval(function() {
        $.ajax({
            type: "GET",
            url: "someurl",
            dataType: "json",
            success: function(data) {
              //Some code
            }
        });
    }, 25 * 1000);
}, 10 * 1000);

但它似乎仍然不起作用。

2 个答案:

答案 0 :(得分:5)



setTimeout(function() {
    function doit() {
        console.log("HERE");
    }
    doit(); // It's already been 10 seconds, so run it now
    setInterval(doit, 25 * 1000); // Run it every 25 seconds from here on out
}, 10 * 1000);




答案 1 :(得分:0)

由于setInterval不会立即触发其回调,因此您需要在启动第二个计时器之前手动执行此操作:

function sendRequest() {
    $.ajax({
        type: "GET",
        url: "someurl",
        dataType: "json",
        success: function(data) {
          //Some code
        }
    });
}

setTimeout(function() {
    sendRequest();
    setInterval(sendRequest, 25 * 1000);
}, 10 * 1000);