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 :

FireFOX + Iframe + onBLur + div Cache/Visible


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut FireFOX + Iframe + onBLur + div Cache/Visible
    Bonjour,

    J'ai un petit soucis sur l'utilisation de l'action onblur sur une iframe sous FireFox.

    L'initialisation de ma page:

    Code Javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
          function gestionQuitterFrame(){
    	alert('quitter frame');
        }
     
        function initialiseOnblur(){
    	if(document.all){
    		document.getElementById("iframe").attachEvent("onblur",gestionQuitterFrame);
    	}else{
    		document.getElementById("iframe").contentDocument.addEventListener("blur",gestionQuitterFrame,true);
    	}
        }
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <body onload="initialiseOnblur();">
    	 <iframe id='iframe' src="mapage">
     
    	 </iframe>
    </body>

    Mon 'iframe' comporte des div que je cache ou rend visible suivant différents cas.

    Le problème est que l'action onblur est exécutée lorsque je change l'état d'une div cachée à visible (alors que celle ci se trouve dasn l'iframe). Toute ceci sous FireFox. Sous IE pas de soucis

    En vous remerciant si quelqu'un possède une piste

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    Bonjour,

    c'est curieux un "onblur" sur une iframe. Que souhaites-tu faire ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    J'ai un tableau comprenant un ensemble de ligne. Toutes les lignes déclenchent l'ouverture d'un formulaire dans l'iframe. On pourra dans ce formulaire enregistrer les informations de celui ci.

    De ce fait, j'ai besoin si on a modifié le formulaire de demander de l'enregistrer si on clic sur une autre ligne avant de l'avoir enregistrer avec le bouton 'enregistrer' du formulaire. D'ou le onblur sur l'iframe pour déclencher ce controle sur la sortie de l'iframe

    Voilà

    J'espère que c compréhensible

  4. #4
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 143
    Points
    11 143
    Par défaut
    Peut-être peux-tu te passer du onblur :
    Ta page d'accueil :
    Code html : 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
    25
    26
    27
    28
     
    <html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    function chargeForm(numF)
    {
     document.getElementById("idFrame").src="formulaire"+numF+".htm";
    }
     
    //-->
    </script>
     
    </head>
     
    <body>
    <input type="button" value="Form 1" id="idButton1" onclick="chargeForm('1')">
    <input type="button" value="Form 2" id="idButton2" onclick="chargeForm('2')">
    <input type="button" value="Form 3" id="idButton3" onclick="chargeForm('3')">
     
    <iframe id="idFrame" src="blanc.htm">
    </iframe>
     
    </body>
     
    </html>

    Page contenant un formulaire :
    Code html : 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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    <html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    var formulaireOk = false;
    function envoiFormulaire(idForm)
    {
      if (!formulaireOk)
      {
        if(confirm("Envoyer ce formulaire ?"))
        {
         document.getElementbyId(idForm).submit();
        }
      }
    }
    function valideFormulaire()
    {
      formulaireOk = true;
      return true;
    }
    //-->
    </script>
     
    </head>
     
    <body onbeforeunload="envoiFormulaire('idForm1')">
     form 1
     
    <form id="idForm1" method="post" action="" onsubmit="valideFormulaire()">
     
        <input type="text" value="Par Defaut" id="idText" size="20" maxlength="10"> <br>
     
        <input type="submit" value="Envoyer">
        <input type="reset" value="Effacer">
     
    </form>
     
    </body>
     
    </html>

    Lorsque l'utilisateur appuie sur un bouton de la page d'accueil, l'événement onbeforeunload se produit dans la page contenant le formulaire. Dans ce cas l'utilisateur doit confirmer ou non l'envoi du formulaire.

    Regarde voir également du côté de la FAQ :
    http://javascript.developpez.com/faq/?page=Form

Discussions similaires

  1. div caché mais visible(cursor=main) malgré display=none
    Par artenis dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 22/07/2012, 15h00
  2. Réponses: 1
    Dernier message: 21/07/2012, 17h09
  3. [PHP-JS] Rendre un input caché visible
    Par sagitarium dans le forum Langage
    Réponses: 2
    Dernier message: 09/11/2006, 09h00
  4. [CSS][firefox]positionner mes div sur une seule ligne
    Par hansaplast dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 29/03/2006, 14h44
  5. [JAvascript] Div caché
    Par cosmos38240 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 27/10/2005, 10h12

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