Creiamo una Semplice SlideShow con Jquery


23 settembre 2010 12 Commenti javascript, jquery

Oggi vedremo come realizzare una slideshow con jquery e un suo utilissimo plugin “jquery cycle”.

Una slideshow per definizione è uno script che ci permette di vedere delle immagini in maniera scorrevole come in una presentazione multimediale.

Questo effetto solitamente viene applicato a delle fotogallery o a delle raccolte di foto per migliorarne la fruibilità nella visualizzazione.

Dopo aver scaricato il nostro amato plugin dobbiamo scrivere il seguente codice:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
<head>
<title>Slideshow in Jquery</title>

<style>
#slideshow img {
padding: 15px;
border: 6px solid #ccc;
background-color: #eee;
}
</style>


<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="jquery.cycle.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {
  $('#slideshow').cycle({
    fx:'fade',
    speed:  1000,
    timeout: 5000
  });
});
</script>


</head>
<body>


<div id="slideshow">

<img src="foto1.jpg" alt="Descrizione prima foto"/>
<img src="foto2.jpg" alt="Descrizione seconda foto"/>
<img src="foto3.jpg" alt="Descrizione terza foto"/>


</div>


</body>
</html>

Basterà inserire le immagini all’interno del div id=”slideshow” è l’effetto di slideshow sarà fatto. Qua il nostro primo esempio.

Ovviamente questa semplice slideshow può essere implementata anche con due bottoni per mandare avanti e indietro la sequenza di foto.

Per applicare tale effetto dovremmo scrivere il seguente codice:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<script type="text/javascript">
$(document).ready(function() {
  $('#slideshow').cycle({
    fx:'fade',
    speed:  1000,
    timeout: 5000,
    prev:   '#prima',
    next:   '#dopo',
 
  });
});

</script>


</head>
<body>

<p id="nav"> <a href="" id="prima">Indietro</a> <a href="" id="dopo">Avanti</a> </p>

<div id="slideshow">

<img src="foto1.jpg" alt="Descrizione prima foto"/>
<img src="foto2.jpg" alt="Descrizione seconda foto"/>
<img src="foto3.jpg" alt="Descrizione terza foto"/>


</div>

Qua il nostro secondo esempio.

Ovviamente per ultima cosa potremmo implementare la nostra slideshow con una descrizione per ogni foto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<script type="text/javascript">
$(document).ready(function() {
  $('#slideshow').cycle({
    fx:'fade',
    speed:  1000,
    timeout: 5000,
    prev:   '#prima',
    next:   '#dopo',
    before:  onBefore,
    after:   onAfter
 
  });
});

function onBefore() {

  $('#descrizione').html('<p>' + this.alt + '</p>');
}
function onAfter() {
  $('#descrizione').fadeIn('1000');
  $('#descrizione').html('<p>' + this.alt + '</p>');
}
   

</script>


</head>
<body>

<div id="descrizione">
 <br>  
</div>

<p id="nav"> <a href="" id="prima">Indietro</a> <a href="" id="dopo">Avanti</a> </p>

<div id="slideshow">

<img src="foto1.jpg" alt="Descrizione prima foto"/>
<img src="foto2.jpg" alt="Descrizione seconda foto"/>
<img src="foto3.jpg" alt="Descrizione terza foto"/>


</div>

Qua il nostro terzo esempio.

Potete scaricare tutti e tre gli esempi da questo link. Alla prossima :D




Potresti trovare interessante anche

Una raccolta di plugin per slideshow in jquery tabs_jquery 107 slideshow_css3
Pubblicato in javascript, jquery |



Iscriviti alla newsletter

Vuoi ricevere ogni articolo che pubblico direttamente sulla tua mail ? Vuoi evitare di perdere qualsiasi articolo pubblico ? Registrati alla mia newsletter in un click.

Inserisci il tuo indirizzo mail:

12 commenti per Creiamo una Semplice SlideShow con Jquery

Ciao, stavo leggendo questa tua guida per modificare uno slideshow su un sito che sto seguendo, però ho un problema nel caricamento delle immagini; infatti, prevalentemtene in IE, mi succede che prima che parta lo slideshow le diverse immagini si sovrappongano per 1-2 secondi prima di partire con il regolare flusso. Le foto pesano 100-120kb al massimo. Tu riesci a darmi dei consigli per risolvere questo problema?
il sito in questione è: http://www.tifinanzia.com
grazie

@masso ciao, sono due i metodi che dovresti usare:

- salvare le immagini in RGB a 72dpi e in jpg;
- e poi dovresti impostare le immagini con un’opacità uguale a 0 durante il caricamento ;)

prova a fammi sapere :D

eh appunto il problema è che non riesco ad impostare l’opacità o la visibilità in fase di caricamento. Come si deve operare?

Ti ringrazio, ha funzionato bene. Una delle delle rare volte che una cosa mi ha funzionato bene subito!

@Silvana grazie mille ;) sono contento , spero che sul trovi tutto quello che ti può servire :D

scrivo solo per ringraziarti del prezioso aiuto, cercavo proprio uno slideshow semplice come questo. Grazie ancora!

ho solo un problema, con chrome funziona, ,ma con explorer e opera le immagini restano tutte visibili in sequenza una sotto l’altra…

@Diego mandami degli screen in allegato a un commento per vedere dove sta il problema e se possibile mandami un link ;)

[...] Cycle Plugin" e lo trovi qui). A questo punto puoi personalizzare il plug-in grazie a questa guida (penso che il secondo esempio faccia a caso tuo). Ciao! __________________ NON CLICCARE [...]

Ciao mi sapresti dire se funziona anche con 5 o 6 immagini grazie. nel caso la tua risposta sia un si come aggiungi le immagini? 

@Giulio Antonio Pallante certo che è possibile aggiungere più immagini alla slide. Per aggiungerle devi soltanto inserire altri tag all’interno del div :D

Lascia un Commento