web-dev-qa-db-fra.com

jquery retarde l'exécution du code

Dans ma fonction jQuery j'ai une image de gif de chargeur. Après que je l'aie montré, je souhaite mettre un délai d'une seconde, puis continuer à exécuter le reste du code. Comment puis je faire ça? 

    $('#loader').css('display', '');

    //// I want to put here a delay. 

    var myDate = new Date();
    myDate.setFullYear(2013,8,2);

    var checkyear = myDate.getFullYear();
    var monthly =myDate.getMonth();
    var daily =myDate.getDate();

    $('#day').html(daily) ;
    $('#month').html(months[monthly]) ;
    $('#year').html(checkyear) ;
11
user1077300

Définissez une temporisation comme celle-ci:

var delay = 1000;
setTimeout(function() {
 // your code
}, delay);

Exemple http://jsfiddle.net/HuLTs/

26
Paul Rad

Avez-vous essayé .delay ?

$('#loader').show(1).delay(1000).hide(1);

La méthode .delay () est idéale pour différer les effets jQuery En file d'attente. Par exemple, parce qu'il est limité - cela ne permet pas, par exemple, d'annuler le délai - .delay () ne remplace pas le Natif de JavaScript setTimeout function , qui peut être plus approprié pour certaines utilisations .

Démo: http://jsfiddle.net/SBrWa/

6
GG.
$(document).ready(function(){ 
    setTimeout(function(){ 
      //your code
     },
  2000); 
});

Ici2000fait référence à2 seconds

5
coder

Vous pouvez utiliser ce code,

$('#loader').css('display', '');

setTimeout(function() {
    var myDate = new Date();
    myDate.setFullYear(2013,8,2);

    var checkyear = myDate.getFullYear();
    var monthly =myDate.getMonth();
    var daily =myDate.getDate();

    $('#day').html(daily) ;
    $('#month').html(months[monthly]) ;
    $('#year').html(checkyear) ;
}, 1000);
0
zahirdhada

Essaye ça,

$(function(){
    $('#loader').css('display', '');
    setTimeout(function(){ 
        var myDate = new Date();
        myDate.setFullYear(2013,8,2);
        var checkyear = myDate.getFullYear();
        var monthly =myDate.getMonth();
        var daily =myDate.getDate();
        $('#day').html(daily) ;
        $('#month').html(months[monthly]) ;
        $('#year').html(checkyear) ;
    },1000);// 1 second delay
});
0
Rohan Kumar