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 :

chargement d'un popup


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut chargement d'un popup
    Bonjour à tous,

    Je vous explique.
    Dans ma fonction javascript qui vérifie les éléments de mon formulaire à la fin juste avant l'envoie des données j'affiche un popup, mon problème est que l'intérieur ne ce charge pas que ce soit une url externe où une page banal avec juste du texte.
    Le popup apparais mais vide et le contenu ne s'affiche qu'une fois les données traiter ce qui prend du temps.
    Si je met un alert() bidon derrière mon popup alors celui s'affiche complètement.
    Et si je l'appelle a l'ouverture de la page il s'affiche parfaitement.
    Je pense donc qu'il s'agit du traitement de mes données qui ralentisse l'affichage du popup. Mais comment éviter sa ?

    Je ne comprend pas pourquoi sa me fais sa.
    Est-ce que quelqu'un pourrais m'expliquer s'il-vous-plais.

    Merci à tous pour votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    donc si je comprends tu ouvres un popup et tu en modifies le contenu ?

    laisse le temps à la popup de s'instancier ...
    ave cun setTimout ou un setIntevral qui teste l'existance du body de la popup par exemple ...;

    sinon evite le popup et passer par une div dans la page (ou au pire un iframe)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    non j'ai du mal me faire comprendre enfaite je crée un popup mais je ne modifie pas sont contenu, je veux juste l'affichez pendant le temps de traitement des données qui sont assez longue, il est fermer par la fenêtre d'après donc je ne peux pas utiliser de div ou de iframe.

    J'ai déjà essayer avec setTimeout, juste apres avoir créé mon popup jai mis sa
    setTimeout("document.f.submit();",500);
    mais sa na rien changé.

    Je vais regarder avec setIntevral.

    Merci et si tu as d'autre idée je suis preneur

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    bien sûr que si tu peux utiliser un div sur la même page
    tu peux utiliser prototype window pour cela
    ou le programmer toi même avec un ajax


    le traitement des données se fait coté serveur ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    oui le traitement des données est coté serveur (PHP) par contre mon popup est un modal (popup plus parti grise tout autour) sa ne change rien pour la div ??

    Je ne connais pas du tout prototype window et je ne vois pas bien la démarche a suivre avec ajax ?

    Il n'y aurais pas une fonction en javascript qui me permettrai d'attendre que mon popup soit instancié avant de continuer ?

    Merci pour ton aide.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    pas très comliqué à mettre en oeuvre prototype window ...

    comme sus dit ...
    un setInterval avec dedans un test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(parent.nompopup.document.body)

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    Je viens de faire un test tout con toujours avec mon popup et setTimeout,
    voici ma déclaration de mon popup (si je l'appelle a l'ouverture de la page il s'affiche parfaitement)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var popup = dhtmlmodal.open("publicite", "iframe", "<? echo $rep_popup['url'];?>", "Espace_de_pub", "width=<? echo $rep_popup['widht'];?>px,height=<? echo $rep_popup['height'];?>px,center=1,resize=0,scrolling=1","recal");
    alert("ok");
    setTimeout("document.f.submit();",500);
    alert("ok1");
    avec le setTimeout j'ai le alert("ok1") qui s'affiche ce n'est pas normal il devrait attendre et si je retire le setTimeout et que je laisse document.f.submit il n'apparais pas.

    Ma question est-ce que j'ai mal écrit une des ces lignes ce qui expliquerai qu'il ne fasse pas mon setTimeout ??????
    sa donne la même chose avec un setInterval.


    Merci de ton aide

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    ok j'ai compris pourquoi mon alert("ok1") s'affichais même avec mon setTimeout c'est ma syntaxe qui était pas bonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    setTimeout(document.f.submit(),5000);
    même comme sa mon popup n'as pas le temps de s'instancier je lui lasse pourtant 5s.

    Je ne comprend vraiment pas pourquoi ?????

    Merci de ton aide.

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    en javascript les instruction s'effectuent en bulles ...
    le second alert n'attend pas la fin du setTimeout pour s'executer ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    alert("ok");
    setTimeout(fucntion(){document.f.submit();
                                     alert("ok1");}
                                      ,500);
    parcontre j'aimerais aussi vois ta balise form ...

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    ok alors voila ma balise form

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form action="page2.php" name="form" method="POST" id="form" enctype="multipart/form-data">
     
    alors je comprend pas trop car j'ai changez la syntaxe de mon setTimeout() et le alert() ne s'affiche plus par contre il n'attend pas 5s pour s'exécuter jai donc ajouter cette ligne juste avant ma validation du formulaire
     
    setTimeout(alert('ok'),10000);
    mon popup alert() doit s'afficher après 10s hors il s'affiche immédiatement apres que mon popup s'affiche, sa na pas de sans ?????

    Du coup je suppose que mes setTimeout() n'attend pas le temps que je leur indique et qu'il exécute directement la fonction ou le code indiquer ?

    Pense tu que ce soit possible ?

    Merci de ton aide.

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 6
    Points
    6
    Par défaut
    J'ai trouver comment faire plutôt que de faire attendre le traitement des données je fais attendre mon popup de 1s avec setTimeout et il ce charge directement dedans.

    Merci pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. focus au chargement de popup
    Par c+cool dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 15/02/2010, 11h38
  2. popup et/ou fonction write:chargement incomplet
    Par meechoko dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/07/2007, 08h47
  3. Popup et Chargement de la page mere
    Par edogawa dans le forum Struts 1
    Réponses: 9
    Dernier message: 23/07/2007, 14h21
  4. [AJAX] Chargement d'une popup
    Par ruda.tom dans le forum JSF
    Réponses: 15
    Dernier message: 18/02/2007, 13h22
  5. exécuter fonction au chargement de opener depuis un popup
    Par RobertVonTagada dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/01/2007, 14h15

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