2017-06-13 4 views
-2

Ich erstelle derzeit eine PHP-Seite, die als ein Dashboard verwendet werden wird. Ich habe viele Features, aber einer von ihnen nervt mich, auch wenn es nicht so schlimm ist.Ausführen von Javascript-Funktion, bevor es sein Intervall

Hier ist das Problem: Ich habe eine Javascript-Funktion, die Daten in einem Intervall von 5min holt, also wenn ich meine Seite öffne, muss ich 5min warten, bevor ich meine Info sehe. Bin ich dumm und es funktioniert oder gibt es eine Möglichkeit, meine Funktion am Anfang auszuführen? Hier ist ein Stück von meinem Code:

var intervalMeteo = 300000; // 1000 = 1 second, 3000 = 3 seconds, 900000=15 minutes 
function doAjaxMeteo() { 
$.ajax({ 
     url: 'sections/meteo.php', 
    success: function (data) { 
         //... 
    }, 
    complete: function (data) { 
      // Schedule the next 
    setTimeout(doAjaxMeteo, intervalMeteo); 
    }, 
    cache: false 
     }); 
    } 
setTimeout(doAjaxMeteo, intervalMeteo); 
+2

Bearbeiten Sie Ihre Frage und posten Sie eine [mcve] bitte, nicht ein Bild Ihres Codes. – j08691

+2

window.onload = doAjaxMeteo; Ich bekomme Ihre Frage nicht ... –

+1

Warum verwenden Sie 'setInterval' nicht statt' setTimeout' Aufrufe? – ceejayoz

Antwort

1

Dieses es beginnt

$(function() { 
    doAjaxMeteo(); 
    // do other stuff if needed 
}); 

Rufen Sie nicht die setTimeout in der gleichen Funktion, lassen Sie nur die eine in vollständig auszuführen

auch nicht tun Verwenden Sie SetInterval, lassen Sie stattdessen die vollständige Ausführung, wenn es zurückgibt

+1

Warum nicht $ (doAjaxMeteo); –

+2

Weil es vielleicht mehr Sachen zu tun gibt – mplungjan

+1

... ja ich war dumm ... tahank du sehr viel –

Verwandte Themen