Aller au contenu

Sujets conseillés

Posté

Bonjour à tous !

Je cherche à réaliser une ouverture de div sur une image map, et un placement à l'endroit du curseur.

J'ai trouvé un peu partout sur le net, cette fonction (et de nombreuses variantes) pour déterminer la position du curseur :

function position(e) {
var posx, posy;
if (!e)
var e = window.event;
if (e.pageX || e.pageY) {
posx = e.pageX;
posy = e.pageY;
}
else if (e.clientX || e.clientY) {
posx = e.clientX + document.body.scrollLeft;
posy = e.clientY + document.body.scrollTop;
}
}

A ce que j'ai lu, pour que cela fonctionne sour Mozilla (Firefox, etc), pour appeler la fonction dans un évènement, il faut préciser un argument "event" (ex : onmouseover="position(event)"). Ca marche parfaitement.

Par contre, je n'arrive pas à appeler la fonction en-dehors de cet évènement.

J'aimerais appeler cette fonction depuis une autre, mais si au sein d'une fonction j'appelle position(event), j'ai cette erreur : "event is not defined".

Comment le contourner ?

  • 2 semaines plus tard...
  • 2 semaines plus tard...
Posté (modifié)

Si ton script se limite au positionnement du curseur, la solution serait à mon avis d'attribuer à la balise <body> un attribut "onmousemove" qui appellerait ta fonction position comme il se doit, puis d'enregistrer à chaque mouvement les nouvelles coordonnées dans une variable globale...

La position du curseur serait alors toujours accessible sans avoir besoin de la variable "event" :)

Modifié par ZeBrian

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...