Event onmouseover et onmouseout

Event onmouseover et onmouseout - HTML/CSS - Programmation

Marsh Posté le 24-11-2007 à 17:17:31    

Bonjour
 
Je vous explique mon problème:
 
J'ai deux <div>. Un est imbriqué dans l'autre.
 

Code :
  1. <div...>
  2.      <div...>
  3.      </div>
  4. </div>


 
Chaque div possède les énènements suivants:
 

Code :
  1. onmouseover="this.style.outline='#00ea40 solid thin';"
  2. onmouseout="this.style.outline='none';


 
Le problème c'est que même si je passe avec la souris sur le div intérieur l'évènement du div parent est aussi éxécuter.
Ca me dérange car je ne veux entourer que le div sur lequel je pointe.
 
Vous avez une idée comment résoudre ce problème?
 
Merci


Message édité par Profil supprimé le 24-11-2007 à 17:19:04
Reply

Marsh Posté le 24-11-2007 à 17:17:31   

Reply

Marsh Posté le 25-11-2007 à 09:55:41    

outline c est pas trop ie compliant donc voici un code qui marche sur ie et gecko
 

Code :
  1. <div onmouseover="this.style.border = '#00ea40 solid thin';" onmouseout="this.style.border='none';" style="padding:10px;width:500px;">
  2.     <div onmouseover="this.style.border = '#00ea40 solid thin';if (!event) event = window.event;event.cancelBubble=true;event.stopPropagation();" onmouseout="this.style.border='none';">Mon 1er texte caché</div>
  3. </div>


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Marsh Posté le 25-11-2007 à 11:39:27    

Exactement ca, j'avais trouvé entre-temps aussi.
En fait la ligne

Code :
  1. event.stopPropagation();

suffit a elle seule.
 
Ca j'ai pas mis, je sais pas à quoi ca sert en plus:

Code :
  1. if (!event) event = window.event;event.cancelBubble=true;


 
Merci quand même ;)
 
Edit: J'utilise pas les bordor car ca décale toute les bloc alors que le outline non.


Message édité par Profil supprimé le 25-11-2007 à 11:41:42
Reply

Marsh Posté le 25-11-2007 à 13:27:07    

la ligne que tu ne comprends permet de rendre ton script compatible pour ie
comme l utilisation de la bordure a la place d outline


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
Reply

Marsh Posté le 25-11-2007 à 13:29:24    

Ah d'accord. Merci.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed