begin process at 2012 05 29 02:50:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Evènements

 > 

Apelle d'une fonction avec un événement comme paramètre


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Apelle d'une fonction avec un événement comme paramètre

vendredi 29 février 2008 à 19:29:03 | Apelle d'une fonction avec un événement comme paramètre

aquanovax

Bonsoir, voila mon problème :

j'ai besoin d'appeler une fonction dont son paramètre est un événement mousemove, au travers d'un Timeout!

-->      setTimeout('mouseFunc('evt')',40);

j'ai essayer de plusieurs façon mais je n'ai pas réussis.

Ca fais un bon moment que je bloque avez-vous des idées?


Merci de vos réponses !
vendredi 29 février 2008 à 19:38:21 | Re : Apelle d'une fonction avec un événement comme paramètre

nicomilville

Membre Club
salut,

setTimeout('mouseFunc('evt')',40);
setTimeout("mouseFunc('evt')",40);


Si t'a besoin d'aide, MP !!!

vendredi 29 février 2008 à 20:43:09 | Re : Apelle d'une fonction avec un événement comme paramètre

aquanovax

Merci de ta réponse mais j'ai déjà essayer. Je vais essayer de formuler plus précisément :

Voila grossièrement mon code :

function init()
{
    document.captureEvents(Event.MOUSEMOVE);
   
    var container = document.getElementById('container');
    container.addEventListener('mouseover',
func1 , true);
}

function func1(evt)
{   
   
func2 ();
}

function
func2 ()
{       
    setTimeout('
func1 ',40);
}

Donc la fonction1 est appelée quand la souris est sur une div (id= container), puis elle appelle la fonction2 qui doit ré-appeler la fonction1.

Mais je n'arrive pas à cause de l'événement evt.

J'ai essayé ces différentes possibilités mais sans succès.

setTimeout(' func1 ',40);
setTimeout(' func1() ',40);
setTimeout(' func1('+evt+') ',40);
setTimeout(' func1("evt") ',40);

Une idée ?
samedi 1 mars 2008 à 10:47:37 | Re : Apelle d'une fonction avec un événement comme paramètre

bultez

Membre Club


Bonjour,

> document.captureEvents(Event.MOUSEMOVE);
    ce n'est plus nécessaire...
    FireFox exigeait ce genre d'appel il fut un temps, plus maintenant




function init()
{
    var container = document.getElementById('container');
    container.addEventListener('mouseover',
func1, true);
}


function func1()
{   
   
func2();
}

function
func2()
{       
    setTimeout('
func1();',40);
}



    ce que tu fais ne fonctionnera pas avec IE d'ailleurs.....



                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 1 mars 2008 à 11:48:36 | Re : Apelle d'une fonction avec un événement comme paramètre

aquanovax

Bonjour, merci de votre réponse, cependant comment récupérer la position de la souris dans la fonction1?
samedi 1 mars 2008 à 12:01:40 | Re : Apelle d'une fonction avec un événement comme paramètre

bultez

Membre Club

ah... là effectivement... pour FF faut un truc que je trouve bizarre...


function Deplace(evt)
{    if (ie)     {    event.x+document.body.scrollLeft;
                        event.y+document.body.scrollTop;
                   }
    else        {    evt.pageX;
                       evt.pageY;
                  }
}


    var ie = false;    /*@cc_on    ie = true;    @*/   
    // pour détecter IE, j'aime bien, on peut faire autrement !
    document.body.onmousemove = function(event)
    // document.body ou un élément  bien entendu
    {    evt = event?event:window.event;
        Deplace(evt);
    }


un ch'tit exemple ici


                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 1 mars 2008 à 13:41:49 | Re : Apelle d'une fonction avec un événement comme paramètre

aquanovax

Je n'y arrive toujours pas !


Voila plus précisément mon code :

/* Initialisation " appelée au chargement de la page" */
function init()
{
    /// Capture the mouse position
    document.captureEvents(Event.MOUSEMOVE);  // -> Ca ne marche plus si je supprime cette ligne
   
    /// Add event to container div
    var container =document.getElementById('container');
    container.addEventListener('mouseover', calculatemouse, true);
}

/* Cette fonction est appelée quand la souris se trouve sur une div */
function calculatemouse(evt)
{   
    /* opération sur la position de la souris */

    move(rel_x, inc);
}


function move(rel_x, inc)
{       
   
/* déplacement d'un objet */

     /*
        - Ré-appel la fonction calculatemouse pour ré-évaluer la position de la souris
        - C'est là que je n'arrive pas à appelé la fonction calculatemouse ( à cause de l'event )
    */

     setTimeout('calculatemouse(evt)',40);
}

samedi 1 mars 2008 à 13:48:24 | Re : Apelle d'une fonction avec un événement comme paramètre

bultez

Membre Club



>>// -> Ca ne marche plus si je supprime cette ligne
    pourquoi ???? si tu la met  ça marche ????


    relis ce que je t'ai mis, appliques  et adpate ( si nécessaire )


                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 1 mars 2008 à 13:51:08 | Re : Apelle d'une fonction avec un événement comme paramètre

bultez

Membre Club
tu n'as pas respecté le moindre iota de mon exemple.....

                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 1 mars 2008 à 14:01:15 | Re : Apelle d'une fonction avec un événement comme paramètre

aquanovax

Effectivement, je me suis trompé je l'admet cette ligne ne change rien.

Cependant  ta réponse n'a aucun rapport avec mon problème dans ton exemple une fonction est appelée quand la souris se déplace sur la page, tu récupère l'événement est appel la fonction déplace où tu récupère la position de la souris en fonction de IE ou FF ( je me trompe ?? ).

Dans mon code, Je
dois appelé la fonction calculatemouse en continu ( à l'aide d'un setTimeout ) tant que la souris se trouve sur ma div container (bien entendu je fais un test pour savoir si elle s'y trouve toujours ou non).

Je n'arrive pas à passer la variable evt qui correspond à l'événement mousemove correctement de le setTimeout, je me demande d'ailleur si c'est possible.

PS : relis ce que je t'ai mis plus haut !


1 2

Cette discussion est classée dans : fonction, paramètre, événement, apelle


Répondre à ce message

Sujets en rapport avec ce message

détecter un événement [ par fat_freddy00 ] salut a tous, je voudrai savoir si il y a moyen de détecter l'événement qui a appelé une fonction ?dans mon cas je voudrai que la fonction s'executer Fonction en paramètre d'une fonction [ par Ekik ] Bonjours,Je voudrais créer une fonction qui me permet d'effectuer telle ou telle action suivant le bouton de la souris qui a été cliqué.Le code que j' problème sur le passage de paramètre dans une fonction [ par cailloucaillou ] Bonjour,Je pose le contexte. Je veux récupérer le chemin d'une image(PHP) et la passer à ma fonction en paramètre (javascript). Cette fonction doit a Lancer une fonctionnée donnée en paramètre [ par Nargzul ] Bonjour!J'ai une fonction pour ajax(mais c'est pas un problème ajax, je précise de suite ^^), xmlrequest que j'uniformise pour toutes mes demandes aja Passage de tableau en paramètre d'une fonction [ par Mask ] Y a t il des subtilités à connaitre quant au passage passage de tableaux en paramètre pour des fonctions par rapport au passage de chaînes de caractèr Passage de fonction en paramètre d'une fonction [ par abdoulax ] Bonjour,Je me suis posé une question assez interressante, est il possible de passer dans les paramètres d'une fonction, une fonction. Comme le fait l' Passage de fonction en parametre d'une fonction [ par abdoulax ] Bonjour,Je me suis posé une question assez interressante, est il possible de passer dans les paramètres d'une fonction, une fonction. Comme le fait l' Urlencode [ par Clem ] Existe il en javascript une fonction comme urlencode en php ?Sinon est il possible d'en faire une en traduisant la fonction vb : Function ReplaceStrin fonction close ne marche pas sur la fenêtre 'première' du navigateur [ par thierry ] Bonjour,Je suis à la recherche d'une solution concernant la fermeture la fenêtre 'première' du navigateur sans validation. La fonction close ne foncti FONCTION CLOSE DANS LES FRAME [ par ATH|500| ] J'ai essayer mais ça marche pas :O( je crois qu'il faut ordonner au deux de se fermer ??? avec la fonction CLOSE ?P.s j'ai 2 frames dans ma page web !


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,572 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales