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 :

Charger une popup une seule fois


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut Charger une popup une seule fois
    Bonjour,

    J'ouvre une popup lorsque je clique sur un lien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script langage="javascript">
      function afficher(fichier) {
        window.open(fichier,"popup", "width=250,height=150")
      }
    </script>
     
    <a href="javascript:afficher('popup.html')">afficher</a>
    Seulement, le fichier popup.html est chargé à chaque click sur le lien. Je voudrais trouver le moyen de ne charger ce fichier qu'une seule fois. Est-ce qu'il n'est pas possible de savoir si la popup est déjà affichée ? Un truc du genre window.getPopup('popup').

    Merci pour votre aide.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonsoir,
    <script langage="javascript"> est obsoléte, utiliser <script type="text/javascript">, mais c'est du détail.

    Dans ta fonction afficher récupéres l'objet window.open et testes si la fenêtre est null ou fermée.

    Un truc du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var nomFenetre = null;
    function afficher(url){
      if( !nomFenetre || nomFenetre.closed){
        nomFenetre = window.open( url, 'popup', 'width=250,height=150')
      }
      else{
        alert('déjà OPEN !');
      }
    }
    http://javascript.developpez.com/faq.../?page=fenetre

  3. #3
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    As-tu envisagé la solution "simple" consistant à renseigner une variable globale et à la tester au moment de l'ouverture de la popup ? ^^

    edit : cramé par un non-fumeur, si c'est pas le comble !

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    Merci pour vos réponses.

    La solution d'utiliser une variable globale ne marche pas chez moi, car je suis susceptible de recharger la page contenant le lien.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Par défaut
    Pour ceux que cela intéresse, j'ai trouvé une solution. Le principe est d'ajaxifier l'affichage de la popup. Ainsi, c'est côté serveur que je vérifie que la popup n'est affichée qu'une seule fois.

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

Discussions similaires

  1. exécuter une macro 1 seule fois par semaine ?
    Par deby23 dans le forum VBA Access
    Réponses: 9
    Dernier message: 20/12/2012, 11h22
  2. [PHP 5.3] je cherche à faire appel à une fonction 1 seul fois
    Par geforce dans le forum Langage
    Réponses: 1
    Dernier message: 23/05/2010, 14h16
  3. Réponses: 4
    Dernier message: 04/12/2009, 12h18
  4. [Débutant] Passage d'une variable à une popup
    Par kiolol dans le forum Langage
    Réponses: 5
    Dernier message: 13/09/2006, 10h19
  5. Transfert d'une page à une popup
    Par crips dans le forum Struts 1
    Réponses: 7
    Dernier message: 13/06/2005, 23h17

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