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 :

Position d'une popup en fonction du clic d'appel


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut Position d'une popup en fonction du clic d'appel
    Bonjour,

    J'ai créé une popup et je voudrais la positionner à côté du champ ou j'ai cliqué pour l'afficher.

    Je veux quel reste dans ma page et ne se mette pas en dehors de mon écran.

    C'est ce quel fait pour l'instant.
    Dans mon javascript, je sais que je doit mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mypop.moveTo(x,y);
    mypop.resizeTo(l,h);
    Je ne veux pas lui donner une position fixe.
    Comment récupérer les valeur de x,y,l,h en fonction de la position de mon curseur dans mon html.

    Merci beaucoup

  2. #2
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    283
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 283
    Par défaut
    Tu crées des input en hidden

    Voilà déjà pour les coordonnées x,y de ta souris

    function detectMouse(e)
    {

    document.getElementById('pos_x').value = event.x
    document.getElementById('pos_y').value = event.y
    }

    dans le <body : onmousemove="detectMouse(event)">

  3. #3
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Merci,

    J'ai mis dans mon programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="x">
    <input type="hidden" name="y">
    Ensuite dans mon body

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onmousemove="detectMouse(event)">
    Puis la function entre mon<body> et mon </body>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <script type='text/javascript' language='Javascript' >
    	function detectMouse(e)
    	{
    	document.getElementById('pos_x').value = event.x
    	document.getElementById('pos_y').value = event.y
    	}
    </script>
    Ma popup apparaît bien, mais je ne vois que le haut, le reste, il faut que j'appel l'ascenseur pour le voir.

    Y a quelque chose qui cloche dans ce que j'ai fait ?

  4. #4
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    283
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 283
    Par défaut
    Le nom de tes inputs n'est pas bon. Renomme les pos_x et pos_y
    et puis pour les tests tu peux les définir en text (le hidden sera ok quand ton soft tournera).

    Les valeurs des inputs doivent te servir à positionner ta popup en placant les valeurs affichées dans la définition de cette même popup

  5. #5
    Membre éprouvé Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Par défaut
    Avec les input text cela me permet de choisir une position si j'ai bien compris.

    Bon, je mets 100/200 et je clic sur mon bouton, mais rien n'est changé.

    J'avoue ne pas comprendre tout à fait ce que je fais.

  6. #6
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    283
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 283
    Par défaut
    Les inputs ne sont là que pour recevoir la valeur transmise automatiquement par l'événement ONMOUSEMOVE qui est dans la balise BODY
    Ce sont ces valeurs qui vont te positionner ta popup car dans ton script où tu ouvres ta popup, tu récupères ces deux valeurs, du style :

    pos_x=document.GetElementByID("pos_x").value;
    pos_y=document.GetElementByID("pos_y").value;

    tu te serts donc de ces deux valeurs pour définir la position de ta popup
    Ne déclare pas les valeurs avec Var pour pouvoir les utiliser ailleurs que dans ta fonction de détection de position.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/02/2014, 19h02
  2. Réponses: 7
    Dernier message: 08/04/2010, 16h10
  3. Réponses: 11
    Dernier message: 19/03/2007, 17h32
  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