Magazine Informatica

Realizzare uno style switcher con jQuery – parte 2

Creato il 01 luglio 2010 da Dymissy

Realizzare uno style switcher con jQuery – parte 2

Nel precedente articolo abbiamo visto quanto semplice sia con jQuery realizzare uno script che consente all’utente di scegliere lo stile di base della pagina. Nell’articolo di oggi estenderemo il progetto iniziale integrando la possibilità di ricordare la scelta dell’utente attraverso l’uso dei COOKIE.

Rispetto al progetto precedente, ho creato anche un altro foglio di stile style_blue.css per aumentare le possibilità di scelta da parte dell’utente.

 

jQuery Cookie

La prima cosa da fare è importare il plugin necessario alla manipolazione dei cookie. Utilizzeremo l’ottimo jQuery Cookie che abbiamo visto in un precedente articolo ad esso dedicato.

Per comodità utilizziamo la versione online del cookie, quindi abbiamo bisogno del seguente codice da inserire all’interno dell’<head>:

view source print?

1 <script type="text/javascript" src="http://stilbuero.de/jquery/cookie/jquery.cookie.js"></script>

Verificare l’esistenza del Cookie

Dobbiamo ora modificare il codice Javascript creato la scorsa volta integrando, innanzitutto, il controllo di esistenza del cookie relativo al colore scelto all’utente e poi aggiungendo il salvataggio del cookie alla scelta del colore.

All’inizio del codice jQuery, quindi, dobbiamo aggiungere la verifica del cookie:

view source print?

1 //verifica esistenza colore

2 if( $.cookie('color') != null )

3   $('#link').attr('href', 'style_' + $.cookie('color') + '.css' );

In pratica, se esiste il cookie color, la pagina verrà caricata con quel determinato stile, altrimenti caricherà lo stile di default.

Creazione cookie

Al click su uno dei link relativi agli stili dobbiamo anche creare o aggiornare il cookie relativo, l’handler del click diventa quindi:

view source print?

1 $('#switcher a').click(function(){

2   $('#link').attr('href', 'style_' + $(this).attr('class') + '.css' );

3  

4   //aggiungo il cookie

5   $.cookie('color', $(this).attr('class'));

6 });

Codice completo

Vediamo a questo punto il codice Javascript completo:

view source print?

01 $(function(){

02  

03  //verifica esistenza colore

04  if( $.cookie('color') != null )

05   $('#link').attr('href', 'style_' + $.cookie('color') + '.css' );

06  

07  $('#switcher a').click(function(){

08   $('#link').attr('href', 'style_' + $(this).attr('class') + '.css' );

09  

10   //aggiungo il cookie

11   $.cookie('color', $(this).attr('class'));

12  });

13  

14 });


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :