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

Wicket Java Discussion :

Ma fenêtre ne se ferme pas sous FF et Chrome


Sujet :

Wicket Java

  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
    Points : 653
    Points
    653
    Par défaut Ma fenêtre ne se ferme pas sous FF et Chrome
    Bonjour,

    J'ai un lien qui permet de fermer ma fenêtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    AjaxLink close = new AjaxLink("quitter") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            session.invalidate();
            target.appendJavascript("window.close();");
        }
    };
    add(close);
    Le problème est que ça fonctionne très bien sous IE. Mais sous Firefox et Chrome, ma fenêtre ne se ferme pas.

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut

  3. #3
    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
    Points : 653
    Points
    653
    Par défaut
    Si je poste ici, c'est que je n'ai pas trouvé sur Google.

    Mais peut-être que je n'ai pas tapé les bons mots clé. Si tu as une requête qui donne des informations intéressantes, ça m'intéresse.

  4. #4
    Membre expérimenté

    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 1 374
    Points
    1 374
    Par défaut
    Bonjour verbose

    C'est un problème javascript AMHA et non wicket.

    De façon générale, il semble que le bout de code utilisé soit non autorisé pour des raisons de sécurité depuis Firefox 2.0 et au dessus, cf :
    [ame="http://www.webdeveloper.com/forum/showthread.php?t=153088"]How to close window using javascript in firefox 2.0 - WebDeveloper.com[/ame]
    http://stackoverflow.com/questions/7...illa-firefox-3

    Il y est également dit : "si ça marche dans IE et pas dans les autres, alors IE est dans le faux". D'ailleurs je n'ai pas trouvé de façon fonctionnant pour tous les navigateurs permettant de fermer une fenêtre.

    Ceci dit, en fonction du besoin, d'autres implémentations sont peut etre possible. Fermer une Modal Window marche par exemple très bien. Ou un tooltip.

    A défaut, peut etre faut il revoir le besoin...

    Je suis curieux de voir la solution adoptée, courage en tous cas !

    ++

  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
    Points : 653
    Points
    653
    Par défaut
    Merci Joseph pour ta réponse.

    En effet, en effectuant une recherche générale sur la question de la fermeture d'une fenêtre sous Firefox, il semble que cela soit impossible, à moins que la fenêtre n'ait été ouverte par un script.

    Normalement, mon application devrait être affichée dans une popup, donc je pense que la fonction close() devrait marcher.

    Par contre, ce qui m'inquiète, c'est que un simple close() fonctionne sous Chrome :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="javascript:close()">fermer</a>
    mais pas lorsque le code javascript est injecté via wicket (voir mon premier message).

  6. #6
    Membre expérimenté

    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 1 374
    Points
    1 374
    Par défaut
    Citation Envoyé par verbose Voir le message
    Merci Joseph pour ta réponse.
    my pleasure

    Citation Envoyé par verbose Voir le message
    En effet, en effectuant une recherche générale sur la question de la fermeture d'une fenêtre sous Firefox, il semble que cela soit impossible, à moins que la fenêtre n'ait été ouverte par un script.

    Normalement, mon application devrait être affichée dans une popup, donc je pense que la fonction close() devrait marcher.
    en fait, sur le lien stackoverflow, il est dit que cela ne marche pas non plus avec FF3, la nécessité d'avoir ouvert par un script n'étant valable que pour FF2.

    Citation Envoyé par verbose Voir le message
    Par contre, ce qui m'inquiète, c'est que un simple close() fonctionne sous Chrome :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="javascript:close()">fermer</a>
    mais pas lorsque le code javascript est injecté via wicket (voir mon premier message).
    Hum, je ne suis pas expert javascript, donc pas facile pour moi là. En général je fonctionne à grands coups de tests sur ces points là.

    Ce que je peux dire, par contre, c'est que ton code initial est un peu différent d'un simple "close" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      target.appendJavascript("window.close();");
    maintenant, est ce que cela a de l'importance, aucune idée.

    sur le fond, ceci dit, je me renseignerais pour savoir si l'on se dirige vers une généralisation de l'approche firefox ou pas. Si tel était le cas, je chercherai une autre solution que le javascript.

Discussions similaires

  1. Code qui s'execute sous IE mais pas sous FF ni Chrome
    Par FraocH dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/04/2010, 10h13
  2. Sous IE la fenêtre ne se ferme pas lorsqu'elle perd le focus
    Par anca2 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/09/2009, 18h56
  3. CSS : ok sous FF pas sous IE et Chrome
    Par Marchy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 15/08/2009, 11h39
  4. [WD14] Fenêtre qui ne ferme pas
    Par Gaetch dans le forum WinDev
    Réponses: 2
    Dernier message: 09/07/2009, 16h49
  5. doublon sous IE mais pas sous Firefox ni Chrome
    Par jopich17 dans le forum Requêtes
    Réponses: 1
    Dernier message: 26/11/2008, 11h21

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