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

IGN API Géoportail Discussion :

Un remède pour booster I.E. ?


Sujet :

IGN API Géoportail

  1. #1
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut Un remède pour booster I.E. ?
    J'ai découvert sur le site de Jeanluc35 un fameux bout de code qui permet de booster l'affichage d'IE.

    Le test effectué ICI (ligne n° 12) semble concluant sur les quelques heures écoulées.

    Si cela a été vérifié, ne serait-il pas intéressant d'insérer ce remède dans toutes les pages, à la manière de la "Compatibilité avec IE8" de l'ancienne version 1.0beta4 ?
    function Chargement() {
    if (typeof(Geoportal) == "undefined") {
    setTimeout("Chargement()",100);//100 millisecondes
    return;
    } }

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Je ne comprend ce terme booster lié à un setTimeout() ... d'autant plus que c'est ce que fait l'API 1.0 via la servlet api :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ...
    function __Geoportal$init() {
      __Geoportal$loadListener();
      if (!__Geoportal$loadComplete) {
        __Geoportal$loadComplete= true;
      } else if (!__Geoportal$ready) {
        if (__Geoportal$timer!=null) {
          window.clearTimeout(__Geoportal$timer);
          __Geoportal$timer= null;
        }
        __Geoportal$ready= (typeof(Geoportal)!=='undefined' && 
            typeof(Geoportal.Viewer)!=='undefined' &&
            typeof(Geoportal.Viewer.Standard)!=='undefined');
        if (!__Geoportal$ready) {
          __Geoportal$timer= 
            window.setTimeout('__Geoportal$init();',500);
         return;
        }
    ...
    Certes, le timeout est à une demie-seconde ...

  3. #3
    Membre averti Avatar de Zébulon-21
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 315
    Points
    315
    Par défaut Pitié pour les "modestes"
    Pitié dgrichard pour les modestes Webmasters : Que faut-il comprendre ou faire de ton code ?

    Au lieu du "boostage", j'aurais dû citer l'explication de la fonction fournie par Jeanluc35 lui-même :
    // PB IE : si l'API n'est pas chargée, tempo puis nouveau lancement du Chargement
    En fait, si j'ai bien compris, la fonction de Jeanluc35 relance automatiquement le chargement en cas de problème (il le confirmera peut-être lui-même s'il lit cette discussion) et j'en déduis que la déficience d'affichage sous IE (couches manquantes ou incomplêtes...) n'est pas une spécificité de ma config perso.

    Donc, si le phénomène s'avère rédhibitoire, même avec la toute nouvelle v1.0 :

    Quid de la fonction utilisée par Jeanluc35 ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par Zébulon-21 Voir le message
    il le confirmera peut-être lui-même s'il lit cette discussion)
    Ce bout de code m'as été conseillé par Dgrichard himself dans le cadre de la v1.0beta4 suite à un problème sous IE : l'init était exécutée avant que l'API soit chargé, d'où l'idée de ce code temporisateur qui attend 100 ms avant de relancer la mécanique.
    J'ai voulu l'enlever avec la v1.0 mais le pb était toujours là.

    Dgrichard donne un code dans sa réponse ci-dessus : dans quelle condition est-il utilisable/utilisé ? Peut-être qu'il y a déjà eu une explication sur ce forum, merci de me/nous rédiriger vers elle.

    Jean-Luc.

  5. #5
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par jeanluc35 Voir le message
    Dgrichard donne un code dans sa réponse ci-dessus : dans quelle condition est-il utilisable/utilisé ?
    Il est activé par défaut dès que l'on écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <script
        type="text/javascript"
        src="http://api.ign.fr/geoportail/api?v=1.0&amp;key=CLEF&amp;instance=VISU&amp;"
    >
    <!-- -->
    </script>
    autrement dit 99% des cas d'utilisation

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 55
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par dgrichard Voir le message
    autrement dit 99% des cas d'utilisation
    Donc dans mon cas il n'est pas utilisé car j'ai:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <script src="http://api.ign.fr/geoportail/api?v=1.0-e&key=CLE"></script>

  7. #7
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par jeanluc35 Voir le message
    Donc dans mon cas il n'est pas utilisé ...
    Normal, l'API ne peut pas prendre de décision pour toi
    Je conseille dans ce cas de copier le code qui suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    var timer= null;
    function initGeoportalMap() {//ou le callback onload
        if (timer!=null) {
            window.clearTimeout(timer);
            timer= null;
        }
        // si api minimale :
        /*
        if (typeof(OpenLayers)=='undefined' &&
            typeof(Geoportal)=='undefined') {
            timer= window.setTimeout('initGeoportalMap();', 100);
            return;
        }
         */
        // si api standard ou étendue :
        if (typeof(Geoportal)=='undefined' &&
            typeof(Geoportal.Viewer)=='undefined' &&
            typeof(Geoportal.Viewer.Standard)=='undefined') {
            timer= window.setTimeout('initGeoportalMap();', 100);
            return;
        }
        // le reste du code ici ...
    }
    et il y a bien d'autres façon de faire

Discussions similaires

  1. Quel SSD pour booster une base de données ?
    Par clavier12AZQSWX dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 20/01/2012, 12h08
  2. Réponses: 1
    Dernier message: 20/03/2007, 23h09

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