Passaggio da un tema di bootstrap a Twitter?

Sto lavorando a un progetto per un client basato su Twitter Bootstrap. Vuole avere diversi schemi di colors che l’utente può selezionare. Ad esempio sono disponibili una combinazione di colors rosso e una combinazione di colors blu che l’utente può modificare attraverso un menu in alto.

C’è qualche plugin per jQuery (o qualsiasi altra cosa per quella materia) che lo farà? Tutto quello che deve fare è caricare un file CSS diverso, suppongo, come faresti a fare questo?

Usa Kickstrap . Puoi installare temi praticamente ovunque, crearne di nuovi, includere temi da Bootswatch e utilizza Less.js sul lato client per ricompilare facilmente le tue modifiche ogni volta.

Bene, dal momento che vuoi caricare temi diversi …

Puoi usare jQuery per caricare diversi fogli di stile

     ...  

Questo potrebbe essere un clic del pulsante o un altro evento che viene triggersto. Quindi, quello che dovresti fare è semplicemente inserire un nuovo elemento nella sezione principale della pagina DOM. Questo può essere fatto in un paio di righe di jQuery:

 $(document).ready(function () { $("a").click(function () { $('head').append(''); }); }); 

Spero che questo lo risolva …

Ho provato questo su IE11, Chrome, Firefox e funziona:

1.

  

2.

 Cerulean 
  1. Codice:

     function changeCurrentTheme(theNewThemeName) { $("#theBoostrapTheme").attr("href", "Content/bootstrap-theme.min" + theNewThemeName + ".css"); } 

In questo caso i file del tema diversi da quelli originali sono stati denominati in questo modo: bootstrap-theme.min_ …. .css bootstrap-theme.min_ …. .css . Ad esempio: bootstrap-theme.min_Cerulean.css

Cambiando l’href del tuo stile, da solo, non farai nulla. Il browser ha già caricato il tuo CSS e la modifica di HREF non gli farà leggere nuovamente il nuovo file.

Leggi la risposta a questa domanda , potrebbe aiutarti.

Se il caricamento della pagina è corretto, dovresti farlo sul server piuttosto che tramite javascript usando un valore di sessione che definisce quale combinazione di colors usare.