Feuille css + javascript

hugo7 Messages postés 352 Date d'inscription samedi 11 décembre 2010 Statut Membre Dernière intervention 29 juin 2011 - 23 mai 2009 à 17:34
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 31 mai 2009 à 13:58
Bonjour j'ai essayer ce code pour changer de feuille css lors du clic sur un bouton mais il ne marche pas pourquoi?
<script language="javascript" type="text/javascript">
   
   function clickBouton(bouton)
{
   if((navigator.appName.indexOf("Explorer") >= 0)
   {
   <link href="App_Themes/internetexplorer/theme1/StyleSheet.css" rel="stylesheet" type="text/css" />
   }
  
}
    </script>
  

10 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
24 mai 2009 à 08:59
Bonjour,

fais cela en html....

        <!--[if IE]>
            <link    rel="stylesheet"
                     type="text/css"
                     href="ton css pour IE">
        <![endif]-->

Cordialement [mon Site] [M'écrire] Bul
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
24 mai 2009 à 11:39
car <link href="App_Themes/internetexplorer/theme1/StyleSheet.css" rel="stylesheet" type="text/css" />
   ce n'est pas du javascript mais du html, donc ça plante
il faudrait faire document.write('<link href=.... />'); ou autre
mais en html c'est plus mieux
@+
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
24 mai 2009 à 11:40
>>il faudrait faire document.write('<link href=.... />'); ou autre
comme document.write va effacer toute la page y compris le javascript
ce serait autrement qu'il faudrait faire....
0
hugo7 Messages postés 352 Date d'inscription samedi 11 décembre 2010 Statut Membre Dernière intervention 29 juin 2011
27 mai 2009 à 12:16
Merci pour tes réponses Bul3.
J'utilise déjà ce que tu ma dit mais le but de changer de feuille css lors du clic sur le bouton est de permettre au utilisateur de choisir le propre thème pour le site.
0

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

Posez votre question
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
27 mai 2009 à 12:38
>>changer de feuille css lors du clic sur le bouton
document.write prohibé alors

>>permettre au utilisateur de choisir le propre thème
ah... rien à voir avec des différences entre
navigateurs non plus alors.

le "plus simple" (?),
mais ça dépend de ce que tu appelles "thême",
c'est, peut-être, de recharger la page avec en paramètre
le thême voulu ( page.htm?thême_voulu )
et d'exploiter cette info
soit avec le langage serveur ( ce serait mieux ) ,
soit si tu veux à tout prix en javascript avec "en tête de page"
un document.write('<link href="'+paramètre de l'url+'".... />');
sachant que window.location.search est = "?thême_voulu"
@+
0
hugo7 Messages postés 352 Date d'inscription samedi 11 décembre 2010 Statut Membre Dernière intervention 29 juin 2011
28 mai 2009 à 17:51
Mais document.write permet d'écrire un texte à l'écran non?
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 mai 2009 à 06:59
certes, mais si tu le fais lorsque toute le page a été interprétée,
ce qui est la cas lorsqu'on appelle la une fonction lors d'un click
sur un bouton, document.write efface toute la page, y compris le
javascript
essaye et regarde la source après ! il ne te restera que ce que
les document.write on fait, tout le reste est effacé.

aller....un début en javascript :
( ce serait mieux avec un langage sur le serveur, mais bon )

    Rouge
    Bleu
    Défaut
    <script type="text/javascript">
        document.writeln('<link rel="stylesheet" type="text/css" href="css'+window.location.search.substring(1)+'.css">');
    </script>

avec les 3 fichiers css :
cssR.css,
a,body    {    background-color:red;
                color:yellow;
            }  
cssB.css
a,body   {    background-color:blue;
                color:cyan;
           }
css.css
a,body    {    background-color:black;
                 color:#FFFFFF;
            }
0
hugo7 Messages postés 352 Date d'inscription samedi 11 décembre 2010 Statut Membre Dernière intervention 29 juin 2011
31 mai 2009 à 12:15
Merci pour ta réponse Bul3 mais je ne comprend pas cette ligne de code :

css'+window.location.search.substring(1)+'.css
0
hugo7 Messages postés 352 Date d'inscription samedi 11 décembre 2010 Statut Membre Dernière intervention 29 juin 2011
31 mai 2009 à 12:44
J'ai essayer ce code mais il m'affiche le texe de ma feuille css :

 [App_Themes/internetexplorer/theme1/StyleSheet.css test]
    [?B Bleu]
    [? Défaut]
    <script type="text/javascript">
        document.writeln('<link rel="stylesheet" type="text/css" href="css'+window.location.search.substring(1)+'.css">');
    </script>
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
31 mai 2009 à 13:58
[App_Themes/internetexplorer/theme1/StyleSheet.css test]
????? c'est quoi ça ????
tel que tu appliques, ça ne peut pas fonctionner !!!
essaye mon exemple tel que je te le montre
si tu ne comprend pas, fais des alert pour
voir les contenus, fais du pas à pas...

>>window.location.search
c'est ce qui est passé en paramètre derrière l'url
si
c'est égal = ?exemple
tu as compris le substring j'espère ! ( ça "supprime" le ? )

css'+window.location.search.substring(1)+'.css
dans mon exemple ça va être = "cssR.css" ou "cssB.css" ou "css.css"
en fonction du lien sur lequel on a cliqué....

>>J'ai essayer ce code
bah... essaye de comprendre ce que tu fais
par rapport à ce que je fais... tout s'explique
0
Rejoignez-nous