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 :

Simuler le click d'un bouton en injectant des coordonnées dans une fonction


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut Simuler le click d'un bouton en injectant des coordonnées dans une fonction
    Bonjour a tous
    je cherche le moyen de cliquer n'importe ou dans le body et que ca me renvoie le nom ou id du bouton qui se trouve dans les coordonnées x y
    j'ai trouver cela dans la faq et un peu partout
    mais je ne sais pas comment le faire fonctionner
    dans cet exemple j'ai deux bouton
    le bouton a cliquer et le bouton qui appelle la fonction pour cliquer sur le premier en injectant des coordonnées
    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
    31
    32
    33
    34
    35
    36
    <!doctype html>
    <html>
    <head>
    <script>
    function evenement(xx,yy){
    oEvent = document.createEvent( "MouseEvents" );
    oEvent.initMouseEvent(
      "click",    // le type d'événement souris
      true,       // est-ce que l'événement doit se propager (bubbling) ?
      true,       // est-ce que le défaut pour cet événement peut être annulé ?
      window,     // l' 'AbstractView' pour cet événement
      1,          // details -- Pour les événements click, le nombre de clicks
      1,          // screenX
      yy,          // screenY
      xx,          // clientX
      1,          // clientY
      false,      // est-ce que la touche Ctrl est pressée ?
      false,      // est-ce que la touche Alt est pressée ?
      false,      // est-ce que la touche Shift est pressée ?
      false,      // est-ce que la touche Meta est pressée ?
      0,          // quel est le bouton pressé
      target      // l'élément source de cet événement
    );
    //target.dispatchEvent( oEvent );
    target.fireEvent( "onclick" );
    }
    </script>
    </head>
    <body style="margin-left:0;padding-top:0;border:1px solid red;">
    <button onclick="alert('Clicked')" id="btn">vrai bouton</button>
    <button style ="position:absolute;top; 500;" onclick="evenement(10,23)" id="btn2">clique sur le vrai  bouton</button>
    <script>
    evenement ("btn");
    </script>
    </body>
    </html>
    si quelqu'un a une idée je suis preneur
    tout ce qui compte c'est le fait que le bouton est inconnu(plusieurs bouton ajouter dynamiquement DOM) seules les coordonnées doivent donner ou non un bouton cliqué

    ps: pour Ie 9 a IE 11
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Salut,

    Dans ce fil Cliquer sur une position X Y il y a une réponse au sujet d'une fonction...

    J'ai testé ici : http://jsbin.com/nozuhakuza/edit?html,output en utilisant :

    onclick="document.elementFromPoint(10, 23).click();"

    Avec Firefox et IE 8 ça marche apparemment...

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonsoir beginner je te remercie pour ta réponse
    je connaissais pas cet api je vais essayer avec IE car la destination de cet exercice est un composant Webbrowser.ocx dans VB utilisant les librairie IE9

    je reviens après test
    merci a toi
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    De rien ! J'ai aussi testé IE 8 (je n'ai pas la version 9) et ça marche aussi...

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    c'est bien ce que je pensais ca fonctionne pas vraiment
    tiens teste ce code tu verra j'ai ajouté le message et des div
    en fait tout se met en vert
    et en plus mes div se placent pas comme il faut !
    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
    <html>
    <head>
    <title>Exemple d'utilisation d'elementFromPoint</title>
    <script type="text/javascript">
    function changeColor2(newColor)
    {
     elem = document.elementFromPoint(600,2);
     elem.style.color = newColor;
    alert(elem.id)
    }
    </script>
    </head>
    <body style="width100%;height:100%">
    <p id="para1">Un peu de texte ici</p>
    <div id="div1" style="postion:'absolute';left:200px,top:150px;width:50px;height:40px;border:1px solid red;float:left"> div1</div>
    <div id="div1" style="postion:absolute;left:300px,top:80px;width:50px;height:40px;border:1px solid red;float:left"> div1</div>
    <div id="div1" style="postion:absolute;left:500px,top:250px;width:50px;height:40px;border:1px solid red;float:left"> div1</div>
    <div id="div1" style="postion:absolute;left:600px,top:350px;width:50px;height:40px;border:1px solid red;float:left"> div1</div>
    <p id="para1">encore un peu de texte ici</p>
    <p id="para1">encore un peu de texte ici</p>
    <p id="para1">encore un peu de texte ici</p>
    </br>
    <button onclick="changeColor2('green');">vert</button>
    </body>
    </html>
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    J'ai testé et ça marche, regarde ici : http://jsbin.com/jovunetage/edit?html,console,output

    Seul le texte de la troisième div passe au vert...

    Alors le problème c'est les coordonnées, à (600,2) cela renvoi un élément nul donc ça foire... mais à 127,55 c'est bon.

    J'ai ajouté l'affichage des coordonnées pour voir...

    J'ai vu sur site qu'avec IE les coordonnées fonctionnent pas pareil, je vais chercher le lien ...

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/04/2015, 15h23
  2. Réponses: 6
    Dernier message: 18/12/2006, 15h49
  3. Réponses: 4
    Dernier message: 18/01/2006, 11h21
  4. Insertion des boutons et des images dans une JTable
    Par anouar dans le forum Composants
    Réponses: 2
    Dernier message: 17/11/2005, 20h23
  5. [VB.NET] fonction qui injecte du html dans une zone précise
    Par denisvignes dans le forum ASP.NET
    Réponses: 5
    Dernier message: 27/10/2005, 09h33

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