Manipuler fichiers css externes avec js

way2web Messages postés 65 Date d'inscription jeudi 17 mars 2011 Statut Membre Dernière intervention 17 mars 2011 - 20 janv. 2007 à 10:44
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 - 22 janv. 2007 à 18:41
Bonjour,
j'aimerais savoir s'il est possible de contrôler le choix des feuilles de style externes avec du javascript, comment écrire dans le head d'un document avec javascript ?

Merci d'avance

11 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
20 janv. 2007 à 11:34
Bonjour,

    ch'tit exemple :

<HTML    Lang="fr">
<HEAD>
<TITLE></TITLE>
<Script    type="Text/JavaScript">
document.write(
    '<LINK   REL="stylesheet"'+
    '        TYPE="text/css"'+
    '        HREF="adresse du .css">');

</Script>
</HEAD>

</HTML>

je n'aime pas trop le document.write, on peut faire autrement,
...mais pour l'exemple, c'était le plus simple...

<hr />                        Cordialement       Bul    
0
ralecul Messages postés 111 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 1 août 2008
20 janv. 2007 à 12:24
Bonjour,

Juste pour info, quel intéret de faire ce controle en javascript ?

Si c'est pour rajouter un test de navigateur et n'inclure que le css correspondant au navigateur, il existe des methodes plus jolies pour faire ça ...

<link rel="stylesheet" type="text/css" media="screen" href="style.css" />
<!--[if IE]>
<link rel="stylesheet" type="text/css" media="screen" href="styleIE.css" />
<![endif]-->

on peut même faire des tests sur la version de IE :
<!--[if gt IE 6]>
<link rel="stylesheet" type="text/css" href="ie60-70-win.css" />
<![endif]-->

<!--[if gt IE 6]>  == if greater than IE6 -> IE6 & IE7...

Henri
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
20 janv. 2007 à 13:32
Henri a parfaitement raison...



<hr />                                Cordialement            Bul        
0
way2web Messages postés 65 Date d'inscription jeudi 17 mars 2011 Statut Membre Dernière intervention 17 mars 2011
20 janv. 2007 à 18:14
Non c'est pour pouvoir sélectionner un design en cliquant sur un choix dans une liste déroulante ! Mais avec la solution document.write, le <link etc... s'inscrit dans le body non? la déclaration des css se fait qd même dans le head me semble t'il ?
0

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

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
21 janv. 2007 à 01:29
Salut

http://openweb.eu.org/articles/presentations_alternatives/

C'est en PHP pour le site openweb mais dans la liste des liens tu as une version
javascript.

Bon coding
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 janv. 2007 à 08:52
>>Mais avec la solution document.write, le <link etc... s'inscrit dans le body non?

dans l'exemple donné, et qui fonctionne, non, c'est dans le head.
mais aucune importance, ou dans le head, ou dans le body... ça baigne.



<hr />                        Cordialement                Bul            
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 janv. 2007 à 08:55
une remarque quand même.
si le choix est fait dans un select, la page html a déjà été traitée/affichée/interprétée... totalement
dans ce cas, document.write effacera totalement la page ( toute la page )
mais pour ajouter quelque chose au body, au head... il y a d'autres possibilités
<hr />                Cordialement        Bul    
0
way2web Messages postés 65 Date d'inscription jeudi 17 mars 2011 Statut Membre Dernière intervention 17 mars 2011
21 janv. 2007 à 12:18
comme ?
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 janv. 2007 à 13:57
c'est à dire ?
<hr />                                Cordialement                Bul        
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 janv. 2007 à 14:35
je suis d'ailleurs très très loin d'être convaincu que "changer le .css"
quand la page a été traitée, modifie le style des éléments concernés.
il faudra[it] recharger la page ou modifier le sytle des éléments. à tester.
<hr />                                                Cordialement            Bul        
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
22 janv. 2007 à 18:41
Si tu veux modifier le style de la page une fois qu'elle est chargée, les css ne pourront rien y faire comme dit bultez, c'est déjà trop tard. Tu dois passer par le DOM.
0
Rejoignez-nous