Salve a tutti, avrei bisogno di un aiuto per modificare uno script. In sostanza, vorrei che in un <div> si susseguano delle notizie (in ordine o casualmente, non importa) e vorrei, inoltre, che appaiano con un effetto stile macchina da scrivere. Questo è lo script che uso al momento:
e questa la parte html:
Come potete vedere dal codice, al momento del caricamento della pagina, lo script mostra la scritta "Ultima Notizia" all'interno del div, con l'effetto che vorrei io... quindi questa parte è risolta.
Il problema è che, invece di "Ultima Notizia", dovrei inserire un array di notizie. Quindi lo script dovrebbe mostrare il primo elemento dell'array (con l'effetto macchina da scrivere"), dopo 5 sec sostituirlo con il secondo elemento (sempre con lo stesso effetto) e così via.
In sostanza... vorrei che la funzione venga ripetuta per ogni elemento dell'array, ad intervalli regolari. Come posso fare?
Scusate se mi sono dilungato e grazie per l'aiuto!
Codice:
<script type='text/javascript'>
function macchinaDaScrivere(id_campo, testo, velocita, posizione){
var lunghezza = testo.length;
posizione = posizione || 0;
if(posizione<lunghezza){
var carattere = testo.substring(posizione,posizione+1);
document.getElementById(id_campo).innerHTML = document.getElementById(id_campo).innerHTML.substring(0,posizione) + carattere + "_";
setTimeout('macchinaDaScrivere("'+id_campo+'", "'+testo+'", '+velocita+', '+(posizione+1)+');', velocita);
}else{
document.getElementById(id_campo).innerHTML = document.getElementById(id_campo).innerHTML.substring(0,lunghezza);
}
}
</script>
e questa la parte html:
Codice:
<body onload="macchinaDaScrivere('ticker', 'Ultima Notizia', 80)">
<div id="ticker"></div>
Come potete vedere dal codice, al momento del caricamento della pagina, lo script mostra la scritta "Ultima Notizia" all'interno del div, con l'effetto che vorrei io... quindi questa parte è risolta.
Il problema è che, invece di "Ultima Notizia", dovrei inserire un array di notizie. Quindi lo script dovrebbe mostrare il primo elemento dell'array (con l'effetto macchina da scrivere"), dopo 5 sec sostituirlo con il secondo elemento (sempre con lo stesso effetto) e così via.
In sostanza... vorrei che la funzione venga ripetuta per ogni elemento dell'array, ad intervalli regolari. Come posso fare?
Scusate se mi sono dilungato e grazie per l'aiuto!