Explique comment mettre en œuvre un news ticker javascript qui est l'alimentation via RSS.

Hier, j'ai posté un script simple qui décrit comment on peut facilement consommer un flux RSS sur votre site web. Cependant, tout n'est pas d'afficher les titres de manière cool. Non, les titres ayant le flux dans un ticker est beaucoup plus agréable.

Toujours en utilisant Yahoo! News comme une source, aujourd'hui, nous allons discuter de la manière de consommer un fil RSS dans un téléscripteur.

Le code ci-dessous ne l'affaire.

<html>
<head>
<script type="text/javascript">
sText var = ""
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 fonction () (
itemNodes var = rss.selectNodes ( "/ rss / channel / item")
var imax = itemNodes.length

sText = itemNodes.item (iNews). getElementsByTagName ( "title"). point (0). Texte
myTicker.href = itemNodes.item (iNews). getElementsByTagName ( "link"). point (0). Texte
ticker ()
iNews + = 1
if (iNews == IMAX) (
iNews = 0
)
window.setTimeout ( "GetNewsSource ()", (90 * sText.length +4000))
)

ticker fonction () (
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>

Nous avons beaucoup de l'utilisation de la fonction window.setTimeout. setTimeout est utilisé pour appeler une autre fonction après une période de temps. La durée est définie en millisecondes.

Le premier script charge le fichier de flux RSS dans les DOM que la page est chargée. Lorsque le corps de la balise onload cas des incendies que nous appelons la fonction GetNewsSource (). Cette fonction lit les articles du noeud dans un fichier RSS nodeList variable et des produits pour en extraire le titre de l'élément dans la variable sText, et le lien hypertexte dans l'élément href myTicker de propriété. Une fois fait le script appelle la fonction ticker () qui écrit le contenu de sText caractère par caractère. Fonction ticker () exécute récursivement par l'intermédiaire de la fonction setTimeout avec chaque personnage en cours de rédaction, après 90 millisecondes.

Fonction GetNewsSource () exécute également récursivement, et nous avons spécifié (90 * sText.length +4000) comme un setTimeout durée. veille ainsi à ce que la prochaine exécution ne donne le coup d'envoi après la fonction de symbole () a terminé l'écriture du contenu intégral de sText.

Pour finir le script vérifie si les titres en cours de rédaction est le dernier de la nourriture, et si oui, réinitialise le retour à la première question.

Et là vous allez, vos news ticker sur votre site web.

Average rating: