Changer les propriétés css avec javascript

Fermé
Porridge - 30 oct. 2007 à 12:37
 Porridge - 1 nov. 2007 à 14:23
Bonjour,

J'ai un petit souci avec Javascript. C'est un langage que je ne maitrise pas du tout, donc la solution du problème est peut-être toute simple. Bon voilà le problème. J'ai un site web ( https://preparer-les-concours.com/ à voir avec mozilla FF de préférence sinon c'est assez laid) et j'aimerais que l'utilisateur puisse changer le thème de la page en cliquant sur un lien (là où il y a marqué "changer le thème"). En fait g mis un onclick dans ma balise <a> et voilà le code pour ma fonction theme :
(comme c an'avait pas l'air de marcher du tout, je me suis limité à faire une fonction pour changer le theme de ma zone "texte" qui a déjà un style css défini)

function theme(texte)
{
with(document)
{
texte.style.background-color='#808080';
texte.style.color='#451200';
}
}

Voilà, je vois pas ce qui cloche, c'est ultra simple. Aussi, j'ai déjà utilisé le javascript pour afficher une info au survol de certains liens (le menu par exemple) en changeant simplement le style css des cadres d'info, les rendant hidden ou visible au passage de la souris, et le code était similaire à celui que je vous met au dessus.

D'où vient le problème ???

Merci d'avance, je n'y comprend plus rien.

Ah oui et à noter que le fait d'écrire cette fonction après les autres fait que plus aucune de mes fonctions Javascript ne marche. Et dernière précision, mon fichier javascript est indépendant de la page et est appelé par un tag <script> dans le <head>
A voir également:

4 réponses

PhP Messages postés 1767 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
30 oct. 2007 à 21:23
Bonsoir

Parmi les opérateurs arithmétiques ont trouve le + mais aussi le - ...

Donc si tu écris

texte.style.background-color tu essais de soustraire color de texte.style.background ;-) Certe JavaScript est tolérant mais qd même
Surtout qu'ensuite tu essais d'affecter une chaîne au résultat du calcul .. Là c'en est trop LOL

Bref et si tu écrivais :

texte.style.backgroundColor = '#808080';   


Ceci dit même comme ça j'ai bien peur que ça ne fonctionne toujours pas !

Personnellement j'écrirais plutôt
function theme(eltId) 
{ 
	var elt = document.getElementById(eltId);
	elt.style.backgroundColor='#808080'; 
	elt.style.color='#451200'; 
} 


Bon faudrait tester que elt est valide ...

Voilà

6
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
30 oct. 2007 à 15:25
salut,

si tu veux pouvoir modifier le thème entier, il existe des codes source de style switchers en php et en Javascript.

écrire cette fonction après les autres fait que plus aucune de mes fonctions Javascript ne marche
une erreur JS peut faire planter tout le code de la page.
utilise l'extension FireBug, elle te déminera tout ça !!!
2
Ok

Merci beaucoup, je vais voir tout ca.
0
Salut,

J'ai aussi un piètre niveau de php mais je préfère ce langage que Javascript qui me parait être un langage très peu intuitif. Les après-midi que j'ai passé à ne pas comprendre d'où pouvait bien pouvoir venir le problème dans chacune de mes tentatives en Javascript... Bon bref, merci beaucoup à vous tous pour vos réponses rapides, je vais voir ça. Euh sinon j'ai un autre problème que je pensais résoudre en Javascript mais qui pourrait peut-être marcher en utilisant le php. Mais je crois que ca serait un peu hors sujet ici, je vais donc ouvrir un autre post.

A plus
0