Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Simulation d'evenement souris

Envoyé par : souqueta

Date : 09/06/2006 10:48

Bonjour,

Est-ce possible de simuler un comportement souris sur un element?

# Re: Simulation d'evenement souris

Envoyé par : chBok

Date : 09/06/2006 11:46

Il me semble qu'il faut utiliser une méthode dispatchEvent(). Voici l'exemple en ligne sur MDC :

var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window,
   0, 0, 0, 0, 0, false, false, false, false, 0, null);
b = document.getElementById("button1"); 
res = b.dispatchEvent(evt); 
if ( res ) {
   // None of the handlers called preventDefault
   b.disabled = true;
}

# Re: Simulation d'evenement souris

Envoyé par : thefab

Date : 09/06/2006 13:19

Et en plus ça fonctionne aussi avec d'autres évènements, par exemple mousemove:

<script type="application/x-javascript">
function simule()
  {
  var evt = document.createEvent("MouseEvent");
  evt.initMouseEvent("mousemove", false, false, window, 0,
    0, 0, 0, 0, false, false, false, false, 0, null);
  var box = document.getElementById("box");
  box.dispatchEvent(evt);
  }
</script>
<button label="Simule" oncommand="simule();"/>
<box id="box" flex="1" onmousemove="this.style.backgroundColor='red';"/>

Par contre le s dans createEvent() est-il obligatoire ? MouseEvent et MouseEvents fonctionnent tout les 2.

# Re: Simulation d'evenement souris

Envoyé par : chBok

Date : 09/06/2006 16:53

theFab, l'exemple que j'ai collé provient de MDC (http://developer.mozilla.org/en/docs/DOM:element.dispatchEvent), alors s'il y a une erreur, il faudra également modifier là bas.

# Re: Simulation d'evenement souris

Envoyé par : souqueta

Date : 10/06/2006 14:08

Merci pour vos réponses!

Effectivement, l'API semble assez fléxible... Je devais juste simuler un double click donc, pour ceux à qui les fonctions à 16 paramètres font peur :

var evt = document.createEvent("MouseEvents");
evt.initEvent("dblclick", true, false);

# Re: Simulation d'evenement souris

Envoyé par : thefab

Date : 12/06/2006 07:32

chBok, non pas d'erreur juste une précision comme quoi ça fonctionne aussi avec des évènements moins évidents qu'un clic, par ex. mousemove.

# Re: Simulation d'evenement souris

Envoyé par : thefab

Date : 12/06/2006 09:29

Apparement MouseEvent ne prend pas de s à la fin, bien que ça fonctionne aussi avec. Sur la page createEvent de MDC l'exemple est donné sans s mais avec sur la page dispatchEvent (je l'ai modifié)

# Re: Simulation d'evenement souris

Envoyé par : chBok

Date : 12/06/2006 09:40

Merci thefab pour tes précisions :)

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.