- Home
- Categorie
- Coding e Sistemistica
- HTML e CSS
- Immagine varia una volta alla settimana!
-
@claudioweb said:
Così scambia tra loro 30 immagini (da 0.jpg a 29.jpg), ma se vuoi che lo scambio avvenga ogni giorno devi modificare l'intervallo ogni quanto avviene lo scambio. E' espresso in secondi, quindi per un giorno devi mettere 86400.
var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 640800 = 1 settimana, 86400 = 1 giorno ecc.
quindi il codice corretto è :
<script language="javascript" type="text/javascript"> //Permette la variazione delle immagini visualizzate con intervallo a scelta //Claudio Matarrelli 2005 - [email][email protected][/email] function immagine_variabile(){ // <-------- Variabili modificabili var numero_immagini = 30; // imposta il numero di immagini da utilizzare var secondi_intervallo = 86400 = 1 giorno ecc. // -----------------------------> var oggi = new Date() var oggi_giorno = oggi.getDate() var secondi = Date.parse(oggi_data); var numero_settimane = secondi % secondi_intervallo; //normalizza in intervalli var numero_immagine = numero_settimane % numero_immagini; // normalizza il numero di intervalli al numero delle immagini document.write('![image](immagini/' + numero_immagine +'.jpg)'); } </script>
ho eliminato alcune variabili che erano all'interno del codice , non so se ho fatto giusto ; ora rimangono
var oggi = new Date()
var oggi_giorno = oggi.getDate()
var secondi = Date.parse(oggi_data);
-
@fasa said:
ho eliminato alcune variabili che erano all'interno del codice , non so se ho fatto giusto ; ora rimangono
var oggi = new Date()
var oggi_giorno = oggi.getDate()
var secondi = Date.parse(oggi_data);
Ma che fai come quelli che smontano qualcosa e buttano via i pezzi che non sanno come rimontare???
Il mio script funzionava... Prova a vedere se il tuo funziona, ma non credo visto hai messo = al posto di // che sono i commenti e la sintassi di parse() richiede tutte quelle variabili.Lo script completo che devi usare per quanto mi riguarda e' questo:
<script language="javascript" type="text/javascript"> //Permette la variazione delle immagini visualizzate con intervallo a scelta //Claudio Matarrelli 2005 - [email][email protected][/email] function immagine_variabile(){ // <-------- Variabili modificabili var numero_immagini = 30; // imposta il numero di immagini da utilizzare var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 86400 = 1 giorno ecc. // -----------------------------> var mesi = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec "); var oggi = new Date() var oggi_anno = oggi.getYear() var oggi_mese = oggi.getMonth() var oggi_giorno = oggi.getDate() var oggi_data = mesi[oggi_mese] + " " + oggi_giorno + ", " + oggi_anno; var secondi = Date.parse(oggi_data); var numero_settimane = secondi % secondi_intervallo; //normalizza in intervalli var numero_immagine = numero_settimane % numero_immagini; // normalizza il numero di intervalli al numero delle immagini document.write('![image](immagini/' + numero_immagine +'.jpg)'); } </script>
Per maggiori informazioni consulta una buona guida di javascript
-
grazie
-
ah...ho riscontrato un piccolo errore che non fa comparire l'immagine!!...
ovvero andrebbe tutto bene, ma quando devo comparire l'immagine non esce perchè al posto di comparire ad esempio ** immagini/22.jpg ** compare un strano segno meno prima dell'immagine ** immagini/-22.jpg ** , da cosa può dipendere?
-
-
Ciao, come tutti gli script da me improvvisati in 10 minuti, senza essere testati, questo conteneva qualche bug piuttosto serio specialmente quando l'intervallo di tempo veniva ridotto da settimane a giorni
Prova a utilizzare questa nuova versione:
<script language="javascript" type="text/javascript"> //Permette la variazione delle immagini visualizzate con intervallo a scelta //Claudio Matarrelli 2005 - [email][email protected][/email] function immagine_variabile(){ // <-------- Variabili modificabili var numero_immagini = 30; // imposta il numero di immagini da utilizzare var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 86400 = 1 giorno ecc. // -----------------------------> var mesi = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec "); var oggi = new Date(); var oggi_data = mesi[oggi.getMonth()]+" "+oggi.getDate()+", "+oggi.getYear()+" "+ oggi.getHours()+":"+oggi.getMinutes()+":"+oggi.getSeconds(); var secondi = Date.parse(oggi_data)/1000; var numero_intervalli = Math.floor(secondi / secondi_intervallo); //normalizza in intervalli var numero_immagine = numero_intervalli % numero_immagini; // normalizza il numero di intervalli al numero delle immagini document.write('![image](immagini/' + numero_immagine +'.jpg)'); } </script>
Speriamo questa sia stabile... in caso ti da' altri problemi fammelo presente.
Scusami ()
-
stavo quasi per gioire...perchè con Explorer funziona (anche se devo testarlo per un po' di tempo), ma con Mozzilla Firefox da errore o meglio non vede l'immagini!!
-
Fatta un'ulteriore aggiustatina
<script language="javascript"> //Permette la variazione delle immagini visualizzate con intervallo a scelta //Claudio Matarrelli 2005 - [email][email protected][/email] function immagine_variabile(){ // <-------- Variabili modificabili var numero_immagini = 30; // imposta il numero di immagini da utilizzare var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 86400 = 1 giorno ecc. // -----------------------------> var mesi = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec "); var oggi = new Date(); var oggi_data = mesi[oggi.getMonth()]+" "+oggi.getDate()+", "+oggi.getYear()+" "+ oggi.getHours()+":"+oggi.getMinutes()+":"+oggi.getSeconds(); var secondi = Math.abs( Date.parse(oggi_data)/1000); var numero_intervalli = Math.floor(secondi / secondi_intervallo) ; //normalizza in intervalli var numero_immagine = (numero_intervalli % numero_immagini); // normalizza il numero di intervalli al numero delle immagini document.write('![image](immagini/' + numero_immagine +'.jpg)'); } </script>
Adesso funziona anche con firefox se gli passi correttamente le 30 immagini
-
ORA PROVO
-
ora visualizza le foto correttamente... ho messo una settimana per la variazione delle foto... vedo se funziona ti so dire
Ti ringrazio Claudio.
-
Posso chiederti un favore?
Non capisco niente o quasi di javascript, e mi servirebbe un codice che mi permetta di cambiare in automatico un' immagine diversa al minuto per un giorno, quindi 1440 minuti per poi ricominciare il ciclo dalla prima...
Puoi?
:bho:
-
Ciao Marco, benvenuto nel forum.
Nel codice dello script precedente c'è scritto chiaramente quali parametri andare a toccare per modificare l'intervallo per quanto dura un'immagine...
var numero_immagini = 30; // imposta il numero di immagini da utilizzare
var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 86400 = 1 giorno ecc.Quindi cambi quel 30 con quante immagini hai a disposizione, poi se ci metti ```
var secondi_intervallo = 60;Ti ricordo che le immagini devo avere nomi 0.jpg, 1.jpg, 2.jpg ecc... e si devono trovare nella cartella *immagini/* Metti nelle head della pagina questo codice opportunamente modificato nelle parti in rosso: > <script language="javascript"> <!-- //Permette la variazione delle immagini visualizzate con intervallo a scelta //Claudio Matarrelli 2005 - [email][email protected][/email] function immagine_variabile(){ // <-------- Variabili modificabili var numero_immagini = 30; // imposta il numero di immagini da utilizzare var secondi_intervallo = 86400; //Seleziona l'intervallo espresso in secondi, 86400 = 1 giorno ecc. // -----------------------------> var mesi = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec "); var oggi = new Date(); var oggi_data = mesi[oggi.getMonth()]+" "+oggi.getDate()+", "+oggi.getYear()+" "+ oggi.getHours()+":"+oggi.getMinutes()+":"+oggi.getSeconds(); var secondi = Math.abs( Date.parse(oggi_data)/1000); var numero_intervalli = Math.floor(secondi / secondi_intervallo) ; //normalizza in intervalli var numero_immagine = (numero_intervalli % numero_immagini); // normalizza il numero di intervalli al numero delle immagini document.write('![image](immagini/' + numero_immagine +'.jpg)'); } /--> </script> Invece metti nel punto della pagina dove vuoi l'immagine questo codice
<script language="javascript" type="text/javascript">
<!--
immagine_giorno();
/-->
</script>Ciao :ciauz:
-
grazie!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
ok
-