rjongerden
%Europe/Berlin %979 %2005, 00:31
Hallo allemaal,
Ik heb het een tijdje naast mij neegelegd maar ik kan er nu echt niet meer van slapen. Ik wil de volgende rss feed laden in flash en hier vervolgens een horizontale newsticker van maken.
<?xml version="1.0" encoding="UTF-8" ?>
- <rss version="0.91">
- <channel>
<title>VID - Actuele verkeersinformatie Nederland</title>
<copyright>Copyright (c) 2004, VID</copyright>
<link>http://www.vid.nl</link>
<language>nl</language>
<description>Actuele situatie op de weg in Nederland</description>
<webMaster>reacties@vid.nl</webMaster>
<pubDate>Sat, 24 Sep 2005 13:34:18 GMT</pubDate>
<ttl>5</ttl>
- <item>
<title>Er zijn 3 meldingen, waarvan 1 file (2 km)</title>
<link>http://www.vid.nl/VI/overzicht</link> <category>Verkeersinformatie</category>
</item>
</channel>
</rss>
Het dikgedrukte gedeelte hiervan wil ik in de newsticker plaatsen.
Ik kan het bestand wel laden met het volgende script:
var myXML : XML = new XML();
myXML.onLoad = function(success) {
if (success) {
} else {
}
};
myXML.load("http://www.vid.nl/VI/_rss");
Nu heb ik echt alle tutorials en uitleg gelezen die ik hierover kon vinden en de simpele fotoalbums en dergelijke maken was geen probleem. Toch kom ik hier absoluut niet uit. Kan iemand mij enorm helpen door uit te leggen welk deel actionscript ik moet toevoegen om nu juist die twee delen van de rss feed te laden en vervolgens te gebruiken in een newsticker.
Alvast enorm bedankt voor de moeite,
Roy
theFlashWizard
%Europe/Berlin %051 %2005, 02:14
hoe zou je het nu met de kennis die je nu hebt doen?
heb je bijv deze wellis geleze:
http://www.kirupa.com/web/xml/index.htm
want dan zou je er echt wel uit kunne kome..
rjongerden
%Europe/Berlin %357 %2005, 09:34
Deze heb ik inderdaad volledig gelezen maar om de één of andere reden kom ik er niet uit om de juiste gegevens uit deze feed te laden.
Groetjes Roy
dioneo
%Europe/Berlin %384 %2005, 10:14
Je laadt de eerste rss in, gooit deze door de xml-parser en voegt de gewenste gegevens toe aan een array.
Je laadt de tweede rss in, gooit deze door de xml-parser en voegt de gewenste gegevens toe aan een array.
[etc]
Aangezien een RSS aan een vaste format moet voldoen kun je werken met het herkennen van de nodenames.
if(rss.firstChild.childNodes[i].childNodes[j].nodeName=='title'){
titleArray[i]=rss.firstChild.childNodes[i].childNodes[j].firstChild.nodeValue
}
Daarmee moet je er toch komen dacht ik zo.
rjongerden
%Europe/Berlin %396 %2005, 10:30
Ik heb dit geprobeerd, maar hij blijft het gehele script als output genereren. Dit is niet de bedoeling.
Toch bedankt voor de moeite!!
Ik hoop dat iemand anders nog iets weet, ik kom er echt niet uit.
Roy
rjongerden
%Europe/Berlin %496 %2005, 12:55
Ik heb dit script gebruikt maar dit laad De verkeersinformatiedienst.
function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild;
caption = [];
url = [];
total = xmlNode.childNodes.length;
for (i=0; i<total; i++) {
caption[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
url[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
}
first_item();
} else {
content = "file not loaded!";
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("http://www.vid.nl/VI/overzicht"+new Date().getTime());
//
function first_item() {
delay = 1000;
p = 0;
display(p);
p++;
}
function timer() {
myInterval = setInterval(ticker, delay);
function ticker() {
clearInterval(myInterval);
if (p == total) {
p = 0;
}
fadeout();
}
}
function display(pos) {
over = new TextFormat();
over.underline = true;
//
out = new TextFormat();
out.underline = false;
//
newsMC.newsText._alpha = 100;
newsMC.newsText.text = caption[pos];
newsMC.onRelease = function() {
getURL(url[pos], "_self");
};
newsMC.onRollOver = function() {
this.newsText.setTextFormat(over);
};
newsMC.onRollOut = function() {
this.newsText.setTextFormat(out);
};
timer();
}
function fadeout() {
this.onEnterFrame = function() {
if (newsMC.newsText._alpha>=0) {
newsMC.newsText._alpha -= 5;
} else {
display(p);
p++;
delete this.onEnterFrame;
}
};
}
dit is mijn laatste poging kan iemand hier iets mee
roy
dioneo
%Europe/Berlin %356 %2005, 09:33
De url die je ophaalt is geen rss, noch XML. Kijk eens in de bron
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/DTD/loose.dtd">
<html>
<head>
<title>De VerkeersInformatieDienst</title>
<style type="text/css">
@import "/vid.css";
</style>
<link rel='alternate' title='VID Actueel'
type='application/rss+xml' href='http://www.vid.nl/VI/_rss'>
</head>
<body style="margin:0;">
<SCRIPT language="JavaScript1.2" src="/java/stm31.js" type="text/javascript"></SCRIPT>
<!-- Begin RealTracker v5.0.0.auto --><script type="text/javascript"><!--
var a,b,rtspd,t,e,m,p,q,q2,g,u,l,w,x,z,o,r='http://www.netpoll.nl/netpoll/imulti.asp?site=105859'
function io(v,t){return v.indexOf(t)};function d(n){var s=''+n;return(s.length<2?'0'+s:s)};function wc(n,v,t){document.cookie=n
+'='+v+'; path=/; expires='+t.toGMTString()+';'};function realtracker(){var s,t=new Date();s=t.valueOf()-rtspd;t.setTime(
t.getTime()+3600000);if(s!=''){wc('RT_speed',s,t); wc('RT_page',0,t);wc('RT_pagen',z,t);if(window.rtl oad)if(window.rtload!='')
window.rtload()}};function ss(s,i,j){return s.substring(i,j)};function y(n){return(n>200?n:1900+n)};function cv(s){var i,e,t=''
var c=document.cookie;i=io(c,s);if(i>-1){s=c.indexOf('=',i)+1;e=c.indexOf(';',i);if(e<0)e=c.length;t=ss(c,s,e)};return t}
z=window.location.href;g='';if(io(z,'http://')==0){z=ss(z,7,z.length);q=io(z,'?');if(q>0){p='&'+ss(z,q+1,z.length)+'&';z=ss(z,0,q)
q=io(p,'&RTci=');if(q>=0){p=ss(p,q+6,p.length);g=ss(p,0,io(p,'&'))}};q=io(z,'#');if(q>0)z=ss(z,0,q);q=io(z,'/');if(q>0)
z=ss(z,q+1,z.length)};r+='&pp='+escape(z)+'&js=1&ci='+g;a=navigator;g=document.referrer;p='RT_page' ;b=a.appVersion.charAt(0)
a=a.userAgent;r+='&l='+a.length;x='MSIE ';w=io(a,x);x=io(a,x+4);u='undefined';if(b>3){t=new Date();rtspd=t.valueOf();r+='&tt='
+d(t.getMonth()+1)+'%2F'+d(t.getDate())+'%2F'+y(t. getYear())+'+'+d(t.getHours())+'%3A'+d(t.getMinute s())+'&j='
+(navigator.javaEnabled()?1:0);window.rtload='';m= parseInt(2000000000*Math.random());t.setTime(t.get Time()+3600000);q=cv(p)
if(q=='')q=0;wc(p,0,t);p+='n';q2=cv(p);if(q2=='')q 2='-';wc(p,'-',t);r+='&p='+q+'&p3='+q2+'&w='+screen.width+'&h='+screen.height
+'&c='+(screen.pixelDepth?screen.pixelDepth:screen.co lorDepth)+'&spd='+cv('RT_speed')+'&d='+m+'&ck='+(cv(p)!=''?1:0);p='RT_id'
t.setTime(t.getTime()+5000000000);e=cv(p);if((w>0&&x<0&&b>3&&io(a,'Mac_P')<0)||b>4){o=g;l='';while(o!=u){l+='parent.';o=u
o=eval('try{'+l+'document.referrer}catch(e){}');if (o==g)o=u;if(o!=u)g=o}};if(e=='')e=m;wc(p,e,t);r+= '&b='
+e;if(w>0){if(typeof window.onload!=u&&window.onload!='')window.rtload=window.onload;wind ow.onload=realtracker}};r+='&ref='
+escape(g)+'&to=0';if(b>3){t=new Image(1,1);t.src=r}else document.write('<img src="'+r+'" width="1" />');
// --></script><!-- End RealTracker -->
<table class="empty" width="800" border="0" cellspacing="0" cellpadding="0">
etc.
Met andere woorden; om rss te kunnen gebruiken, moet je wel rss gebruiken. :#
Er staat in het doc dat je ophaalt wel een expliciete link naar je http://www.vid.nl/VI/_rss
bovendien is de rss een iets andere opmaak dan gewend, hier een aanpassing;
function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild.firstChild;
var caption:Array = new Array();
var url:Array = new Array();
total = xmlNode.childNodes.length;
z = 0;
for (i=0; i<total; i++) {
if (xmlNode.childNodes[i].nodeName == 'item') {
subtotal=xmlNode.childNodes[i].childNodes.length
for (j=0; j<subtotal; j++) {
caption[z] = xmlNode.childNodes[i].childNodes[j].childNodes[0];
url[z] = xmlNode.childNodes[i].childNodes[j].childNodes[1];
z++;
}
}
}
first_item();
} else {
melding = "file not loaded!";
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("http://www.vid.nl/VI/_rss");
Daarmee moet-ie het iig doen [8ball]
Jack777
%Europe/Berlin %928 %2008, 22:16
Bedankt Heren,
Erg duidelijk code van Dioneo in combinatie met de boven genoemde Tutorial :
http://www.kirupa.com/web/xml/index.htm aangeven door the FlasWizard.
Mvrgr
Jack
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.