Arrêter une fonction js au passage de la souris [Résolu/Fermé]

Signaler
Messages postés
13
Date d'inscription
dimanche 10 août 2014
Statut
Membre
Dernière intervention
29 janvier 2015
-
Messages postés
13
Date d'inscription
dimanche 10 août 2014
Statut
Membre
Dernière intervention
29 janvier 2015
-
Bonjour,

Je suis novice dans le domaine du code, j'ai seulement eu quelques cours de html et css lors de mon année scolaire pour être capable de construire les bases d'un site. J'ai essayé de me débrouiller comme je pouvais et ne connaissant rien au javascript j'ai utilisé un script trouvé sur un site ; il marche très bien mais j'aimerais ajouter une fonction.

Il s'agit d'un script qui fait rebondir mon image sur la page, mais j'aimerais que celle ci s'arrête à l'endroit où elle est lorsque la souris passe dessus, et qu'elle reparte lorsque le curseur n'est plus dessus. Sauriez-vous ce qu'il faut ajouter pour arriver à un tel résultat ?


Voici le code que j'ai pour l'instant :

<html>

<head>

<title>Marie Malarme</title>

</head>

<div id="img" style="position:absolute;z-index:1000">

<a href="http://www.mariemalarme.fr/about"><img src="Logo tournant/Point d'interrogation/point-interrogation.gif" border="0" width=75" alt="" onClick="pause_resume();"></a> (ici j'ai essayé de remplacer le onClick par onMouseOver, l'image s'arrête mais ne repart pas...)

</div>

<script language="JavaScript">

var xPos = 20;

var yPos = document.body.clientHeight;

var step = 1;

var delay = 5;

var height = 0;

var Hoffset = 0;

var Woffset = 0;

var yon = 0;

var xon = 0;

var pause = true;

var interval;

img.style.top = yPos;

function changePos() {

width = document.body.clientWidth;

height = document.body.clientHeight;

Hoffset = img.offsetHeight;

Woffset = img.offsetWidth;

img.style.left = xPos + document.body.scrollLeft;

img.style.top = yPos + document.body.scrollTop;

if (yon) {

yPos = yPos + step;

}

else {

yPos = yPos - step;

}

if (yPos < 0) {

yon = 1;

yPos = 0;

}

if (yPos >= (height - Hoffset)) {

yon = 0;

yPos = (height - Hoffset);

}

if (xon) {

xPos = xPos + step;

}

else {

xPos = xPos - step;

}

if (xPos < 0) {

xon = 1;

xPos = 0;

}

if (xPos >= (width - Woffset)) {

xon = 0;

xPos = (width - Woffset);

}

}

function start() {

img.visibility = "visible";

interval = setInterval('changePos()', delay);

}

function pause_resume() {

if(pause) {

clearInterval(interval);

pause = false;

}

else {

interval = setInterval('changePos()',delay);

pause = true;

}

}

start();

</script>

</body>
</html>


Voilà j'espère que quelqu'un pourra aider la débutante que je suis qui n'y comprend pas grand chose ! Merci :)
Marie.

2 réponses

Messages postés
760
Date d'inscription
samedi 29 mars 2014
Statut
Membre
Dernière intervention
8 septembre 2018
97
bonjour,

<img src="Logo tournant/Point d'interrogation/point-interrogation.gif" border="0" width=75" alt="" onmouseover="pause_resume();" onmouseout="pause_resume();">
Messages postés
13
Date d'inscription
dimanche 10 août 2014
Statut
Membre
Dernière intervention
29 janvier 2015

ah d'accord c'était tout bête! au moins j'étais sur la bonne piste. merci merci ! :)