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 de fenêtre]Quel évènement choisir?


Sujet :

JavaScript

Vue hybride

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

    Informations forums :
    Inscription : Juillet 2003
    Messages : 53
    Par défaut [Fermeture de fenêtre]Quel évènement choisir?
    Bonjour,

    existe-t-il un évènement ou une astuce permettant de détecter la fermeture d'une fenêtre (objet window)? Je souhaiterais que cet évènement ou cette astuce fasse le distingo entre une fermeture stricte de la fenêtre et un simple rafraichissement de la page ou une redirection d'url(onunload/onberoreunload ne font pas l'affaire, je pense).

  2. #2
    Membre averti
    Inscrit en
    Février 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 27
    Par défaut je up
    Voila j'aimerais bien savoir la réponse aussi ... c'est le deuxième jour que je planche dessus et beh j'y arrive pas

    Par contre je pense que le onbeforeunload est la seule solution ... mais peut être me trompe-je ...

    Alors voilà ou j'en suis :

    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
    25
    26
    27
    28
    29
    30
    window.onbeforeunload = function(e) {
     
        if (e && e.target) {
            alert("pas ie");
            var t = e.target.id;
            alert("nom : " + t);
            if (t == undefined) {
                if (confirm("Voulez vous terminer la conversation ?")) {
                    window.location = "disconnect.aspx";
                    alert('test2');
                }
            }
            else {
                alert('test3');
            }
        } else {
            alert("ie");
            var y = event.clientY;
            alert(y);
            if (y < 0) {
                if (confirm("Voulez vous terminer la conversation ?")) {
                    window.location = "disconnect.aspx";
                    alert('test2');
                 }
            }
            else {
                alert('test3');
            }
        }
    }
    Mais cela pose quelques problèmes ... comme le fait que la flèche précédent fasse fermer la session
    J'utilise le target pour firefox parce que je n'arrive pas a utiliser le pageY ...
    et j'utilise de clientY sous IE parce que je n'arrive pas à utiliser le srcElement ... (ce qui serait mieux)




    edit : ouai bon en fait j'aurais mieux fait de faire un autre sujet parce que c'est pas tout a fait le même sujet ... désolée trop tard

  3. #3
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    peut être que si onbeforeunload, mais en ayant blindé tous tes liens de la fenetre d'une modification de d'un flag ...

    genre

    var getout=false;

    et sur tous les liens qui quitten la page tu fais
    getout=false

    et dans le onbeforeunload un test sur getout
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre averti
    Inscrit en
    Février 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 27
    Par défaut
    Citation Envoyé par SpaceFrog
    et sur tous les liens qui quitten la page tu fais
    getout=false
    getout=true plutot non?

    Mais ca ne me permettra pas de savoir s'il a cliqué sur les boutons fermer/précédent, etc du navigateur ...

  5. #5
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    oui true pardon ...

    non mais comme en javascript tu n'a aucun moyen hormis les href de savoir ou tu vas tu ne peux pas detecter très précisément comment tu quittes la page ...

    Donc je dirais que tu ne peux pas faire ce que tu veux en javascript sauf à blinder toutes tes pages d'un test sur le referrer et encore qui ne se renseigne pas tout le temps ...

    Une solution avec un historique de navigation dans un cookie peut être ...
    sinon en langage serveur ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre averti
    Inscrit en
    Février 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 27
    Par défaut
    Bon ben d'accord, merci beaucoup je vais essayer autrement alors ...

    Je peux pas mettre résolu désolée c'est pas mon sujet

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/01/2013, 12h16
  2. Quel événement choisir?
    Par Nokho dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/12/2010, 17h06
  3. quel évènement ? fermeture form enfant
    Par noobyyy dans le forum C#
    Réponses: 9
    Dernier message: 19/11/2010, 13h50
  4. [XL-2003] Quel évènement choisir ?
    Par Yvanou dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/08/2009, 10h30
  5. je veux apprendre la programmation quel language choisir??
    Par existance dans le forum Débuter
    Réponses: 26
    Dernier message: 06/08/2002, 05h32

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