8
votes

Comment changer le CSS de la page complète / site web en cliquant sur?

est-il possible d'avoir 3-4 CSS sur une page, puis de tout événement, par exemple, cliquez sur Changez le CSS pour une page Web complète. De cette façon, nous pouvons donner à notre utilisateur la possibilité de changer le thème. Je sais que nous pouvons changer le CSS d'un élément par: xxx


0 commentaires

4 Réponses :


2
votes

Le Garden Zen CSS (voir la cinquième question) a fini par décider que le plus facile Way était juste pour actualiser la page et définir un nouveau côté du serveur CSS.


1 commentaires

Mais je veux faire ce côté @Client, je veux dire en utilisant jQuery ou javascript



9
votes

Oui, c'est possible. Typiquement ce que vous feriez, c'est écrire une fonction JavaScript qui changera, ou ajoutera ou supprimera une feuille de style du du document. Pour rendre l'expérience un peu mieux, vous stockez généralement la préférence de l'utilisateur dans un cookie. Il y a un article sur une liste à part qui montre comment implémenter ce .

et bien sûr, Vous pouvez le faire avec jQuery ... Vous voudrez peut-être consulter la source de Jstyler .


1 commentaires

Voir le plug-in Jstyler pour JQuery, la source est assez courte et facile à comprendre.



0
votes

CSS est émise sur la balise «LINK» DOM. Vous pouvez donc localiser ce lien et ajouter / supprimer

Le code suivant indique comment supprimer et ajouter un nouveau (j'utilise MS AJAX Voir la méthode $ GET, mais Vous pouvez le remplacer par Pure Dom ou autre dialecte): P>

    var head = document.getElementsByTagName('head')[0];

    var oldLink = $get("nameOfLink", head);
    if(oldLink!=null) 
        head.removeChild(oldLink); //remove old entry
    var s = document.createElement('link');
    s.id="nameOfLink";
    s.type = 'text/css';
    s.rel="stylesheet";
    s.charset ='utf-8';
    s.href = "http://your-provided-url";
    head.appendChild(s);


2 commentaires

Est-ce que la suppression et l'ajout du lien link rel = "stylesheet" feront cela? pas sûr, mais je vais devoir essayer d'essayer


@Rakesh Joyy, vous voulez dire une redondance de type / id / charset? Si oui, alors Charset est vraiment redondant, mais le type est fortement recommandé par certains navigateurs (peut-être que je me trompe de genre, mais c'est-à-dire les besoins). Enfin, "ID" est nécessaire par logique de script.



0
votes

Habituellement mieux pour charger une feuille de style externe (Ajoutez A ): http://snippl.com/view/3873/failsafe-load-for-attaching-stylesheet/

Mais si vous avez besoin de créer un tas de styles à la volée, vous pouvez également créer et ajouter un nœud