Discute su come attuare un javascript news ticker che è tramite feed RSS.
Ieri ho inviato un semplice script che descrive come si potrebbe facilmente consumare un feed RSS sul tuo sito web. Tuttavia, visualizzando solo i titoli non è così fresco. Nein, con il flusso di notizie in un ticker è molto piacevole.
Sempre utilizzando Yahoo! Notizie come fonte, oggi si discuterà su come consumare un feed RSS in un ticker.
Il codice riportato sotto il trucco.
<head>
<script type="text/javascript">
var sText = ""
var i = 0
iNews var = 0
var rss = new ActiveXObject ( "Microsoft.XMLDOM")
rss.async = false
rss.load ( "http://rss.news.yahoo.com/rss/world")
GetNewsSource funzione () (
var itemNodes = rss.selectNodes ( "/ rss / channel / item")
var Imax = itemNodes.length
sText = itemNodes.item (iNews). getElementsByTagName ( "titolo"). item (0). testo
myTicker.href = itemNodes.item (iNews). getElementsByTagName ( "link"). item (0). testo
Ticker ()
iNews + = 1
if (iNews == IMAX) (
iNews = 0
)
window.setTimeout ( "GetNewsSource ()", (90 * sText.length 4000))
)
ticker funzione () (
i + = 1
myTicker.innerText = sText.substring (0, i) + "*"
if (i <sText.length) (
window.setTimeout ( "ticker ()", 90)
)
else (
i = 0
)
)
</ script>
</ head>
<body onLoad="GetNewsSource()">
<p> <b> Yahoo! News: id="myTicker" <a href=""> </ a> </ b> </ p>
</ body>
</ html>
Noi facciamo molto uso del window.setTimeout funzione. setTimeout viene utilizzato per chiamare un'altra funzione dopo un determinato periodo di tempo la durata. La durata è specificato in millisecondi.
Il primo script carica il feed RSS file in DOM, come la pagina viene caricata. Quando il corpo del tag evento onload incendi che chiamiamo funzione GetNewsSource (). Questa funzione legge il nodo oggetti del file RSS in un nodeList variabile e proventi per estrarre l'elemento title in sText variabile, e l'elemento di collegamento in collegamento ipertestuale myTicker's href proprietà. Una volta terminato lo script chiama la funzione ticker () che scrive il contenuto di sText carattere per carattere. Funzione ticker () esegue ricorsivamente attraverso la funzione setTimeout con ogni carattere che viene scritta dopo 90 millisecondi.
Funzione GetNewsSource () esegue anche ricorsivamente, e abbiamo specificato (90 * sText.length 4000) come un setTimeout durata. questo assicura che la prossima esecuzione solo dopo calci funzione ticker () ha completato la scrittura l'intero contenuto della sText.
Per arrotondare lo script controlli per vedere se la notizia titolo che viene scritta non è l'ultimo in mangimi e, in caso affermativo resetta il feed-back per la prima voce.
E ci si va, la tua news ticker sul tuo sito web.

Delicious
Digg
Google
Yahoo