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

JSF Java Discussion :

Position Popup JSF (popup sorti de l'écran)


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Par défaut Position Popup JSF (popup sorti de l'écran)
    Bonjour,
    J'ai un popup jsf (composant Trinidad) sur un lien. Quand le lien se trouve en bas de la page, une partie du popup sort de l'écran et il faut scroller pour voir le reste. Je voudrais changer la position du popup (quand il sort de l'écarn) pour qu'il soit affiché correctement.
    J'ai pense à recuperer la position du lien par javaScript pour savoir si on est en bas de la page et donner une nouvelle postion au popup... mais je connais rien au JS et je sais pas comment changer préciser la postion d'un popup..
    Merci de vos aids
    Ciao

  2. #2
    Modérateur
    Avatar de paissad
    Homme Profil pro
    Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Inscrit en
    Avril 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 043
    Par défaut
    Bonjour,
    C'est sûrement un problème de CSS ou de Javascript. Il faudrait que tu postes un minimum de code ou bien que tu débogues tout via Firebox ou Google Chrome.

    Cordialement,
    Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
    Le chat du site est aussi ici pour aider. Ne pas hésiter à visiter !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Par défaut
    Merci pour la réponse,
    j'ai réussi à résoudre la majorité du problème. J'ai récupéré les dimensions de browser et les coordonnées (x,y) du souris. Du coup, via javascript, je peux savoir si le popup va sortir de l'écran ou pas...
    si oui, je dois changer par exemple la position "top" du popup pour qu'il s'affiche un peu plus haut.
    voila une partie du JS qui essaie de changer le top dans le CSS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // The popup will be out of the page
            if(isPopOffthePage(anEvent,50)){
            	var mosY = anEvent.screenY;
            	var newY;
            	if(navigator.appName == "Microsoft Internet Explorer"){
            		newY = mosY - 70;
            	}
            	else{ 
            		newY = mosY - 70 - pageYOffset;
            	}
            theCurNode.style.top= newY+"px";
            }
    le problème c'est que la dernière ligne de ce code JS plante (il affiche pas du tout le popup)... en fait j'arrive par exemple change la couleur du popup quand il sort de l'écran en remplaçant la dernier ligne par celle-ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    theCurNode.style.background = '#ff00aa';
    mais quand je veux changer le top, ca fonctionne pas.
    Je me demande est-ce qu'on peut changer le dom "top" de css de manière dynamique ?
    Merci beaucoup.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Par défaut
    Et voici la class CSS pour le popup :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    .popup {    
      background-color:#F0F0F0; 
      border:1px solid #DCDCDC;
      padding:5px;
      text-align:left;
      position:absolute;
      z-index:5;
    }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 61
    Par défaut
    J'ai trouvé la réponse moi-même
    le propriété "top" de CSS n'est une position absolute (c-a-d, ce n'est pas par rapport à l'écran ou browser) mais c'est un offset de la position de l'endroit où on a cliqué.
    Du coup, le top donné définie le décalage (vers le haut) de l'endroit où je clique. moi je donné le pixel absolue alors que je dois donné le décalage en nombre de pixel.
    Je sais pas si je suis clair mais ca marche, merci quand même.

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

Discussions similaires

  1. Popup texte en bas de l'écran
    Par theanthony33 dans le forum Android
    Réponses: 2
    Dernier message: 28/06/2010, 22h13
  2. message popup jsf
    Par scania113H dans le forum JSF
    Réponses: 5
    Dernier message: 12/03/2010, 17h02
  3. Position d'une popup en fonction du clic d'appel
    Par lodan dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 08/08/2006, 10h51
  4. Obtenir la taille et position d'une popup
    Par laurent_h dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/06/2006, 11h42
  5. position d'une popup
    Par ph_anrys dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/05/2006, 11h24

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