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 :

Fermeture page mais pas rafraichissement


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Points : 62
    Points
    62
    Par défaut Fermeture page mais pas rafraichissement
    Bonjour je cherche à faire qq chose de tout simple sur le papier mais difficile (voir impossible) en code.

    Voila le topo: je veux sur une dizaine de page dans mon site que lorsque l'utilisateur ferme le navigateur ou quitte le site, une question lui soit posé en lui demandant pk il part.

    On peut utiliser onUnload pour ca. Le problème c'est que si vous cliquez sur un lien de ces pages, la question est aussi demandé. Ainsi qu'en cas de F5.....

    Donc je ne sais pas trop quoi faire, ni même si ce que je recherche est faisable facilement (cad sans mettre en place une usine à gaz)

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Points : 1 234
    Points
    1 234
    Par défaut
    Avec un frameset d'une seule frame, c'est simple.
    Tu mets le onuload sur la frame, tout ce qui concerne ton site se passera à l'intérieur sans provoquer l'évenement (sauf F5, peut-être).

    Y a des gens qui disent que les frames c'est mal.

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Points : 62
    Points
    62
    Par défaut
    J'ai mit dans ma page:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <iframe onUnload="alert('t');" src="index.php" width="500" height="300"></iframe>
    Et ca ne fait strictement rien, que l'on ferme que l'on fasse F5 ou autre.

    Peu être ais je mal compris ta proposition.

  4. #4
    Membre confirmé Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Points : 455
    Points
    455
    Par défaut
    Pas iframe, frameset.

  5. #5
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Wells Voir le message
    Donc je ne sais pas trop quoi faire, ni même si ce que je recherche est faisable facilement (cad sans mettre en place une usine à gaz)
    Pour les liens, tu pourrais parser ta page et modifier tous les liens. Par contre, ça ne ferait rien pour les F5.

    Pour les frames, c'est pareil, à mon avis, tu ne pourras jamais différencier un F5 d'une sortie de ta page....

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Points : 1 234
    Points
    1 234
    Par défaut
    Citation Envoyé par Wells Voir le message
    J'ai mit dans ma page:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <iframe onUnload="alert('t');" src="index.php" width="500" height="300"></iframe>
    Et ca ne fait strictement rien, que l'on ferme que l'on fasse F5 ou autre.

    Peu être ais je mal compris ta proposition.
    Le onunload dans ce cas ne doit pas être mis sur l'iframe mais sur le body de la page qui le contient.

  7. #7
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Points : 62
    Points
    62
    Par défaut
    Bonjour à tous et merci pour votre aide. Un dernier petit soucis:

    Voila la structure de ma page:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
    <head>
    <title></title>
    </HEAD>
    <FRAMESET framespacing="0" border="0" rows="0,*"> 
    <FRAME name="banniere" scrolling="no" noresize target="som" src="depart.html"> 
    <FRAME name="ba" style="overflow-x:hidden; overflow-y:auto;" noresize target="sommaire" src="accueil.php"> 
    <NOFRAMES> 
    <P>Cette page utilise des cadres, mais votre navigateur ne les prend pas en charge.</p> 
    </NOFRAMES>
    </FRAMESET>
    </HTML>
    Dans ma page accueil.php j'ai:

    parent.top.onbeforeunload = function (){ajax_departins('../')};
    ou
    parent.frames['banniere'].window.onbeforeunload = function (){ajax_departins('../')};

    Les deux marchent trés bien avec firefox, mais impossible avec IE. La fonction n'est pas exécuté avec ce dernier. Si qq'un a une idée suis preneur.

  8. #8
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 154
    Points : 62
    Points
    62
    Par défaut
    Résolu via cette fonction:

    Dans la page depart.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script>
    function pour_ie()
    	{
    	var ie = window.event;
    	if (ie)
    		ajax_departins('../');
    	}
    </script>
    </head>
    <body onunload="pour_ie();">

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

Discussions similaires

  1. Transformation qui marche pour une page mais pas pour l'autre
    Par pestakeur dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 06/11/2012, 16h34
  2. Bouton facebook présent sur une page mais pas sur une autre
    Par mandragore59va dans le forum Facebook
    Réponses: 1
    Dernier message: 09/11/2011, 03h25
  3. Réponses: 4
    Dernier message: 01/03/2010, 19h23
  4. Formulaire en plusieurs pages, mais pas linéaire.
    Par dhjapan dans le forum Langage
    Réponses: 8
    Dernier message: 13/05/2007, 17h13
  5. Réponses: 4
    Dernier message: 27/09/2005, 22h00

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