Changer une couleur de fond avec javascript

WRInaute discret
Bonjour !

J'aurais besoin de votre aide...
En fait, je voudrais que lorsque le curseur de la souris passe sur un lien, la couleur de fond d'un autre lien change...

Merci !
 
WRInaute discret
Merci beaucoup !
J'essayais avec bgColor, mais ça ne fonctionnais pas !
Par contre, maintenant j'essaye de modifier la couleur du lien, et je voudrais ajouter une bordure a droite et a gauche...

Ma fonction ressemble à ça :

Code:
<script type="text/javascript">
<!--
function changebg(id) {
	var e = document.getElementById(id);

	if(e) {
		e.style.backgroundColor='#ffffff';
		e.style.fontcolor='#000000';
	}
}
-->
</script>

Edit : La couleur de fond ne revient pas normale lorsque la souris part du lien. J'ai pourtant ajouter
Code:
onmouseout=javascript:changebg('');
 
WRInaute discret
J'ai rajouté un parametre qui vaut 1 quand il faut changer le backgroundcolor et qui est vide quand il faut le remettre normal :

Code:
<script type="text/javascript">
<!--
function changebg(id,a) {

		if (a == '') {
			document.getElementById(id).style.backgroundColor='';
			document.getElementById(id).style.fontcolor='';
		}
		else {
			var e = document.getElementById(id);
			e.style.backgroundColor='#ffffff';
			e.style.fontcolor='#000000';
		}

	}
-->
</script>


Par contre, pour la couleur de la police ça ne marche pas... Le fontcolor s'utilise bien comme ça ?
 
WRInaute discret
Ça ne marche pas non plus :(
J'ai essayé avec e.style.linkColor et la non plus la couleur de la police ne change pas...
Pour mettre ma bordure, e.style.borderLeft ne m'affiche pas la bordure a gauche :oops:
 
WRInaute impliqué
Salut,

Ya mais ce n'est pas parce que c'est du javascript que tu peux changer les noms de propriétés css :wink:

Pour ta bordure c'est style.border-left

Pour ton lien c'est style.color
 
WRInaute discret
SuperCureuil a dit:
Ya mais ce n'est pas parce que c'est du javascript que tu peux changer les noms de propriétés css :wink:

:oops: Je ne connais pas grand chose au javascript, c'set en faisant des recherches que j'ai trouvé borderLeft ^^ :arrow: http://zonecss.free.fr/javascript_css/j ... order.html

Sinon je comprend plus rien la... Quand je rajoute style.border-left, il n'y a pas de bordure et le fond ne se change plus... :roll: :(

Code:
function changebg(id,a) {

		if (a == '') {
			document.getElementById(id).style.backgroundColor='';
			document.getElementById(id).style.alinkColor='';
			document.getElementById(id).style.border='0';
		}
		else {
			var e = document.getElementById(id);
			e.style.backgroundColor='#ffffff';
			e.style.color='#000000';
			e.style.border-left='1px solid black';
			e.style.border-right='1px solid black';
		}

	}
 
WRInaute discret
Problème finalement résolu pour la couleur de la police !
L'id était celui du conteneur et non pas l'id du lien !
Merci pour votre aide précieuse ! :)
 
WRInaute impliqué
un truc pas mal pour eviter ce type de désagrément c'est d'utiliser this :

Code:
<a href="" onMouseOver="changebg(this,1)">link</a>

function changebg(e,a) {

      if (a == '') {
         e.style.backgroundColor='';
         e.style.alinkColor='';
         e.style.border='0';
      }
      else {
         e.style.backgroundColor='#ffffff';
         e.style.color='#000000';
         e.style.border-left='1px solid black';
         e.style.border-right='1px solid black';
      }

   }
 
Discussions similaires
Haut