Aller au contenu

Bloquer Le Mouvement D'une Image...


Monsieur Banane

Messages recommandés

Bjr à tous, je'ai besoin de vous ! Jai pas mal cherché par moi meme, mais la, j'en peut plus :( .

 

Voila mon probleme :

je voulai faire un menu avec un truc qui suit la souris par dessus, et ca, c'est bon : LA

 

il s'agit en fait de ce script que j'ai modifié à ma sauce.

 

 

Maintenant, le probleme : ce truc suit la souris au dessus du menu, parck'il y aura qqchose au dessus de ce menu, et je voudrai pas que l'image passe par dessus... il me faudrai donc qqchose pour la "bloquer"

 

jai essayé les frames, mais ca coupe les parties du site ... pas cool ... et de modifier le code, pour definir des valeurs maximum et minimum, mais jai pas réussi (bidouillage à 100%).

 

 

J'espere que qqun trouvera une solution à ce probleme :)

je vous remercie d'avance

Lien vers le commentaire
Partager sur d’autres sites

Essaie avec ça, j'ai ajouté des tests (basés sur des variables que tu devras configurer) pour ne pas que le truc sorte du menu, et j'ai indenté/commenté/corrigé le code

Valid HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<title></title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
<!--
var x = 135;
var y = 0;
var dist=-145;
var distg=-145;
var distd=75;
var vit=10;
var total=0;
var mess;
var posX = 0;
var posY = 0;
var animate = true;
var imag1 = "suiveurs.gif";
// The following are used to make sure the cursor doesn't move out of the menu. Some should be dynamic, use the Image() constructor to get properties (additionnaly it would preload images)
var toplimit = 10; // Take in account body padding, and images over the menu when setting this
var menuheight = 544;
var trackerheight = 108; // Will center the image on the mouse
var bottomlimit = toplimit + menuheight - trackerheight; // You shouldn't need to change this

if (document.getElementById) {
if (navigator.appName.substring(0,3) == "Net")
 document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = Pos_Souris;
window.onload = depl_img;
}


function Pos_Souris(p) {
y = (navigator.appName.substring(0,3) == "Net") ? p.pageY : event.y+document.body.scrollTop;
}

function depl_img() {
if (document.getElementById && animate) {
 if (posY-trackerheight/2 < toplimit)
  document.getElementById("idjoe").style.top = toplimit;
 else
  document.getElementById("idjoe").style.top = (posY-trackerheight/2 < bottomlimit) ? posY-trackerheight/2 : bottomlimit;
 document.getElementById("idjoe").style.left = posX+dist;
 vitess = setTimeout("depl_img()",vit)
 posX = posX+(((x-posX)+10)/vit);
 posY = posY+(((y-posY)-5)/vit);
 if(posX+dist<x) {
  imag2='suiveurs.gif';
  dist=distg
 }
 else{
  imag2='suiveurs.gif';
  dist=distd
 }
 if(imag2!=imag1) {
  document.joe.src=imag2;
  imag1=imag2;
 }
}
}

if (document.getElementById) {
document.write('<div id="idjoe" style="position: absolute">');
document.write('<img src="suiveurs.gif" name="joe" border="0" hspace="0" vspace="0" alt=""><\/div>');
}
//-->
</script>
<img src="normal.jpg" name="menu" width="200" height="544" hspace="0" vspace="0" border="0" align="top" usemap="#Map" alt="menu">
</body>
</html>

Ah, l'indentation a l'air de merder avec Invision, faudra faire sans (vive <pre>)

Lien vers le commentaire
Partager sur d’autres sites

oula :blink:

 

bon, jvai devaliser le pharmacien de toute ses boites de doliprane (effet 2h de svt + 2h de philo + 2h de physique), et en revenant, je testerai ca

 

 

merci bcp :)

 

 

edit :

 

Mais ca marche putain ! :D

 

merci bien, t'es un genie !

 

----

 

Posté à 9:46 PM

 

lol, y'a une bouse .... On peu pas cliquer sur les liens en dessous ! :lol: :lol:

 

 

chai pas si jvai arriver à le finir, ce site !!

Modifié par Xr
Lien vers le commentaire
Partager sur d’autres sites

Normalement mon script change rien à ça. Le problème était existant dans ton exemple et viendrait selon moi du fait que t'utilises une image mappée, sauf que t'as aucune coordonnée définie.

Va voir là : http://www.htmlhelp.com/reference/html40/special/map.html

Attention, leur exemple est mal codé, il manque des guillemets et tout. Mais à part ça tu devrais comprendre comment l'utiliser. Au pire, je me débrouillerai pour te pondre le code si tu t'en sors pas.

Lien vers le commentaire
Partager sur d’autres sites

nan, en fait, le map, c'est un résidu d'un ancien test... :)

 

le prob vien tout simplement que les trucs bleu se collent par dessus le menu ... :) ... embetant. Donc j'en met que d'un coté, ce qui supprime le probleme, tout en restant esthetique :)

 

jte remercie encore !

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...