jeje, claro, esa es la idea, pues aqui va un ejemplo de lo que tengo y lo que quiero hacer, lo primero es que tengo un archivo en javascript que tiene el codigo siguiente:
function Replace(totalValue,oldValue,newValue)
{
while(totalValue.indexOf(oldValue) > -1)
totalValue=totalValue.replace(oldValue,newValue);
return totalValue;
}
/* Aqui Traigo los Nodos del XML
(Parametros) TagNames:'XML Elemento' nodo:'Numero de fila de elemento' */
function getNode(TagName, node)
{
var currentNode = (node == null) ? xmlDoc.getElementsByTagName(TagName) :
items[node].getElementsByTagName(TagName);
if(currentNode.length > 0)
return currentNode[0].firstChild.nodeValue;
}
/* Cargando documento XML
(Parametros) rssFeed:'Archivo RSS' Body:'Layer para el cuerpo rss' Titulo:'Layer para el titulo rss' */
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 = "Aparentemente no se puede leer remotamente el xml via firefox, copiar el archivo en el servidor";
xmlDoc = document.implementation.createDocument("","",null) ;
}
xmlDoc.async=false;
xmlDoc.load(rssFeed);
items=xmlDoc.getElementsByTagName('noticia');
SetRSSTemplates();
}
catch(e)
{
rssTitle.innerHTML = 'Error occured';
rssBody.innerHTML = 'Thrown Error:'+e.message+"<br/>Note: "+errorHappendHere;
}
}
/* setiando el template de html */
function SetRSSTemplates()
{
if (rssBody)
{
var buffer = "";
for(var i=0; i< items.length; i++)
{
if (document.all)
{
var output = Replace(rssBody.innerHTML,"(::Link::)",getNode('li nk',i));
}
else
{
var output = Replace(rssBody.innerHTML,"%28::Link::%29",getNode ('link',i));
}
output = Replace(output,"(::Title::)",getNode('titulo',i));
output = Replace(output,"(::Pubdate::)",getNode('fecha',i)) ;
output = Replace(output,"(::Description::)",getNode('descri pcion',i));
buffer+=output;
}
rssBody.innerHTML = buffer;
}
if (rssTitle)
{
var output = Replace(rssTitle.innerHTML,"(::Title::)",getNode(' title'));
if (document.all)
{
output = Replace(output,"(::Link::)",getNode('link'));
}
else
{
output = Replace(output,"%28::Link::%29",getNode('link'));
}
output = Replace(output,"(::Description::)",getNode('descri ption'));
rssTitle.innerHTML = output;
}
}
window.onload = function()
{
ReadRSS('noticias.xml','rssBodyTemplate','rssTitle Template');
}
--------------------------------------------------------------------------------
en una pagina html pongo el siguiente codigo:
<script language="JavaScript" src="rss.js" type="text/javascript"></script>
<div id="rssTitleTemplate">
<div align="left">(::Title::)<br/>
<a href="(::Link::)"></a></div>
<a href="(::Link::)">
<h1 align="left">(::Description::)</h1></a> </div>
<div id="rssBodyTemplate">
<div align="left"><a href="(::Link::)"><b>(::Title::)</b></a>
<b>(::Pubdate::)</b>
<br/>
<font size="-1">(::Description::)</font>
</div>
<hr noshade="noshade"/>
<br/>
</div>
--------------------------------------------------------------------------------------
Esto me da como resultado la siguiente imagen:
lo que me interesa es que cuando se le de click a uno de esos links, se abra una pagina temporal en el cliente que tenga los elementos deseados del archivo xml con e que estoy trabajando en el que hay elementos que no muestro en la lista de la imagen, por ejemplo imagen, la noticia completa, etc.
Espero que tengan la idea y que me puedan ayudar, Gracia..