IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Conserver l'animation d'un gif lors d'une initialisation lourde


Sujet :

JavaScript

  1. #1
    Membre du Club Avatar de Mic75
    Homme Profil pro
    Développeur Frontend
    Inscrit en
    Janvier 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Frontend
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 143
    Points : 52
    Points
    52
    Par défaut Conserver l'animation d'un gif lors d'une initialisation lourde
    Bonjour à tous,

    A l'initialisation de ma page, j'affiche un div contenant un gif faisant office de loader pendant que la page exécute une fonction d'initialisation en javascript.

    Le problème vient du fait que la fonction d'initialisation qui est très gourmande (déclaration d'un tableau à deux dimensions 10000x10000 entre autre) freeze l'animation du gif de chargement.

    Une solution serait d'utiliser un webworker HTML5 pour le code lourd de la fonction d'initialisation, cependant, ces derniers ne sont pas compatibles avec IE.

    Existe-t-il une alternative ou une façon de rendre l'exécution de cette fonction d'initialisation asynchrone/non bloquante ?

    Merci d'avance pour les suggestions.

  2. #2
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Salut,

    Tu peux essayer de fragmenter ton initialisation et utiliser setTimeout.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    var p = 0;
     
    function init() {
        for(var i=p;i<p+10;i++) {
        }
        p += 10;
        if(p<1000) setTimeout(init, 10);
    }
     
    init();
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  3. #3
    Membre du Club Avatar de Mic75
    Homme Profil pro
    Développeur Frontend
    Inscrit en
    Janvier 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Frontend
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 143
    Points : 52
    Points
    52
    Par défaut
    Ok, merci, je vois à peu près l'idée.

Discussions similaires

  1. Problème lors d'une initialisation
    Par marion15 dans le forum C++
    Réponses: 9
    Dernier message: 17/06/2013, 19h18
  2. Réponses: 6
    Dernier message: 28/05/2009, 12h45
  3. Réponses: 2
    Dernier message: 23/07/2007, 15h38
  4. [VB]Animation d'un gif
    Par alex_95 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 01/03/2006, 19h19
  5. Controler l'animation d'un .gif
    Par SGJ dans le forum 2D
    Réponses: 9
    Dernier message: 03/01/2006, 19h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo