Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# [Résolu] Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 15:10

Bonjour, Je n'arrive pas à faire fonctionner la propriété "position" de l'element "popup". Quoi que je mette pour cette valeur, le popup s'affiche en haut à gauche de la fenetre en cours.

Est ce que quelqu'un a déjà eu ce problème, ou y-a-t-il quelque chose de spécifique à changer pour que cela fonctionne ?? Je voudrais que ce popup s'affiche au niveau du curseur de la souris.

Merci d'avance

# Re: Propriété "position" de l'element popup

Envoyé par : papy

Date : 27/06/2006 15:18

J'ai rencontré ce problème la semaine dernière, mais je ne saurais plus trop te dire si j'avais fait une erreur de syntaxe ou si le problème a disparu avec la dernière version de firefox (1.5.0.4).

Ta popup est bien contenue dans un popupset ?

# Re: Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 15:19

Ouais ouais ma popup est dans un popupset, et j'ai firefox 1.5.0.4 ...

# Re: Propriété "position" de l'element popup

Envoyé par : papy

Date : 27/06/2006 15:38

Peut tu poster le code correspondant du popupset et de l'élément qui déclenche la popup ? Je n'arrive plus a reproduire ce problème...

Sinon si je me rapelle bien, ma popup s'affichait en haut de la fenêtre, mais pas toujours exactement à la même position. Ca se passait un peu comme si elle se placait avec le bon decallage par rapport à la souris, mais au lieu de la souris elle se centrait sur le haut de la fenêtre. Je n'avais pas d'attribut position de spécifié.

# Re: Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 15:42

Voila mon code XUL :

<popupset>
  <popup id="mail_menu" position="at_pointer">
    <menuitem label="Copier l'adresse e-mail" oncommand="click_copy_mail();"/>
  </popup>
</popupset>

Voila mon code javascript permettant de l'aficher :

function click_mail(evenement) {
document.getElementById("mail_menu").showPopup(document.getElementById("children_mail"), evenement.clientX, evenement.clientY);
}

# Re: Propriété "position" de l'element popup

Envoyé par : thefab

Date : 27/06/2006 15:46

Il faut que tu passes evenement à ta fonction:

oncommand="click_copy_mail(event);"

Fabrice

# Re: Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 15:53

oui oui c'est ce que je fais ...

# Re: Propriété "position" de l'element popup

Envoyé par : thefab

Date : 27/06/2006 15:59

Ben pas dans le code que tu montres en tout cas...

# Re: Propriété "position" de l'element popup

Envoyé par : papy

Date : 27/06/2006 16:03

De mon côté je n'arrive pas à faire marcher la popup non plus en utilisant la fonction javascript showPopup. Par contre ce n'est pas exactement de cette manière qu'elle s'utilise, il ne faut pas spécifier et l'élément et les coordonnées : http://www.xulplanet.com/references/elem(..)

Regarde les commentaires en bas de cette page, tu n'es pas le seul à avoir ce problème et apparement c'est un bug de gecko.

Si tu peux attacher ta popup directement sur un élément XUL avec l'attribut context ou sur un bouton (voir attribut type du bouton) ca devrait marcher normalement et surtout simplement. Sinon tu peux essayer les solutions qu'ils proposent dans les commentaires.

Désolé de ne pas avoir pu t'aider plus...

# Re: Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 16:03

J'ai un oncommand sur un "tree" qui appelle cette fonction ...

# Re: Propriété "position" de l'element popup

Envoyé par : AurelBUD

Date : 27/06/2006 16:23

Bon bah c'est bon j'ai trouvé, code javascript :

document.getElementById("mail_menu").showPopup(document.getElementById("children_mail"), window.screenX+evenement.clientX, window.screenY+evenement.clientY+30);

le "+30" correspond à la taille de la barre en haut de la fenetre ...

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.