Changer le style css

Résolu
cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 - 8 mars 2005 à 12:49
darb66 Messages postés 36 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 23 juin 2008 - 1 juin 2006 à 17:38
Salut !

J'ai créé un menu en javascript avec une feuille de style pour les menus, sous-menus etc ...

en gros :

menu 1,
menu 2,
menu 3,

----

ssmenu 1,
,

----

ssmenu 2

Pas de problème !

Ce que je voudrais faire, c'est avoir une zone de texte et onChange sur cette zone de texte changer la feuille de style de mon menu.
vite fait ca donne :

function changeStyle(maCouleur)
{
document.stylesheets["menu"].backgroundColor=maCouleur;
}

Ca ne marche pas ! Si qqun a une idée, elle sera la bienvenue ;)
a+++

9 réponses

chimelpremier Messages postés 544 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 mai 2005
9 mars 2005 à 14:19
Je ne connaissait pas non plus document.stylesheets et je viens de découvrir qqchose qui va t'intéresser aussi :



http://developpeur.journaldunet.com/tutoriel/dht/020527jscript_css.shtml
3
cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 1
1 juin 2006 à 17:19
Salut !
ca ca doit marcher je pense :

<TD class="menu"onMouseOver="this.className='menu_over';"onMouseOut="this.className='menu';">Item 1</TD>

Allez a+++

_____________________
 http://www.bzh-metal.com
Communauté Métal Bretonne
3
pigime Messages postés 45 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 15 mars 2005
8 mars 2005 à 16:13
document.stylesheets["menu"].backgroundColor= maCouleur;

1) tu fais appel à l'élément "menu"... qui n'existe pas (en tout cas dans le code que tu nous montre).

2) Encadre ton code par des balises div:

id="menu" >
... ton menu ...

3) Et puis modifie ta fonction avec un truc de ce genre:

function changeStyle(maCouleur)
{
document.menu.style.backgroundColor =maCouleur;
}

PS: Je n'ai pas testé.



@+

- PIGIME -
0
cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 1
8 mars 2005 à 16:26
Salut !

oui j'avais pas mis tout mon code :
<style>
menu
{
backgroundColor: #FFFFFF;
}
</style>

Merci pour ta solution mais ca ne marchera pas, vu que je dois changer le style de plusieurs tableau (enfin de certaines cellules de mes tableaux)

J'ai fait ca autrement du coup , merci quand meme
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chimelpremier Messages postés 544 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 mai 2005
8 mars 2005 à 22:34
Si tu as une feuille de style extérieure:

<link rel="stylesheet" href="menu.css" />

Tu peut créer une deuxième feuille de style menu2.css qui contiendras ton changement de style et que tu pourra changer dynamiquement :

function changeStyle()
{
document.getElementsByTagName('link')[0].href="menu2.css";
}

On aimerait savoir comment tu as fait autrement ?
0
cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 1
9 mars 2005 à 13:42
Ah ouai je connaissait pas ca !

mais dans mon cas, tu peux, dans le css, récupérer la valeur de mon input text ?

En fait ma solut n'en est pas une vraiment.
Ce que je voulais faire c'est pouvoir changer les couleurs d'un site et voir l'apercu en temps réel.
Du coup j'ai fait une page bidon, avec un menu déroulé, j'ai mis un id a chaque cellule (qui correspondent chacune à un style : menu, menu survolé, menu sélectionné, sous-menu .....)

Et quand je change mon texte ('fin j'ai une palette faite en js), je change le style sélectionné !
voila !
a+++
0
cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 1
9 mars 2005 à 14:41
ah oué ! nickel ! jte remercie c cool !
0
darb66 Messages postés 36 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 23 juin 2008
1 juin 2006 à 17:07
Hello, J'ai egalement une question concernant la modification des styles en Javascript. J'ai cree un menu dans un tableau : <td class="menu">item1</td>. Avec une fonction Javascript j'aimerai changer l'attribut class de l'objet td lors de l'evenement MouseOver de facon a ce que la propriete class ait ensuite pour valeur menu_over. Est-ce possible?

J'ai essaye differentes variante, mais je n'arrive pas au resultat voulu... Est-ce que vous pouvez m'aider?

Merci d'avance...
FD
0
darb66 Messages postés 36 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 23 juin 2008
1 juin 2006 à 17:38
Ca marche, merci pour l'info... 
0
Rejoignez-nous