Announcement

Collapse
No announcement yet.

RSS Reader

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • RSS Reader

    Hallo,

    ich habe ein Problem und zwar muss ich mich jetzt mit RSS Feeds und ihren Reader auseinandersetzen. Für meinen Fall benötige ich einen Reader, der zur gleichen Zeit, zwei verschieden xml quellen einlesen und auswerten kann. Besser gesagt ich rufe die Funktion zum lesen der Feeds einmal auf und übergebe mehrer xml-strukturen an den Reader. Wäre gut wenn ihr mir helfen könnte wie so ein reader ausschaut.

    ich habe da was programmiert aber das funktioniert nur für einen link.



    Code:
    function ReadRSS(rssFeed, Body, Title)
    {
    	rssTitle = document.getElementById(Title);
    	rssBody = document.getElementById(Body);
    
    	try
    	{
    		if (document.all)
    		{
    			var errorHappendHere = "Check Browser and security settings";
    			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    		}
    		else
    		{
    			var errorHappendHere = "Apparently one cant read remote xml via firefox, please copy the file to your server";
    			xmlDoc = document.implementation.createDocument("","",null);
    		}
    
    		xmlDoc.async=false;
    		xmlDoc.load(rssFeed);
    
    		items=xmlDoc.getElementsByTagName('item');
    		SetRSSTemplates();
    	}
    
    	catch(e)
    	{
    		rssTitle.innerHTML = 'Error occured';
    		rssBody.innerHTML = 'Thrown Error:'+e.message+"<br/>Note: "+errorHappendHere;
    	}
    }
    
    
    function SetRSSTemplates()
    {
    	if (rssBody)
    	{
    		var buffer = "";
    		for(var i=0; i< 4; i++)
    		{
    			var output = (document.all) ? Replace(rssBody.innerHTML," (::Link::)",getNode('link',i))
    									   : Replace(rssBody.innerHTML,"%28::Link::%29",getNode('link',i));
    			output = Replace(output,"(::Title::)",getNode('title',i));
    			output = Replace(output,"_"," ");
    			output = Replace(output,"(::Pubdate::)",getNode('pubDate',i).substr(0,17));
    			output = Replace(output,"(::Description::)",getNode('description',i));
    			buffer+= output
    		}
    		rssBody.innerHTML = buffer;
    	}
    
    	if (rssTitle)
    	{
    		var output = Replace(rssTitle.innerHTML,"(::Title::)",getNode('title'));
    		output = (document.all) ? Replace(output,"(::Link::)",getNode('link'))
    							   : Replace(output,"%28::Link::%29",getNode('link'));
    		output = Replace(output,"(::Description::)",getNode('description'));
    		rssTitle.innerHTML = output;
    	}
    }
Working...
X