Javascript Feedreader внутри Div - PullRequest
       4

Javascript Feedreader внутри Div

0 голосов
/ 21 октября 2011

Реализация JS-скрипта для извлечения / разбора фида XML и возврата содержимого в html. К сожалению, этого не происходит, так как на странице появляется только текст (Feed!) Между тегами div.

function loadRSSFeed(param){
  var xmlhttp = new XMLHttpRequest();
  xmlhttp.open("GET",'http://feeds.feedburner.com/engadget/Dnjv',false);
  xmlhttp.send();
  xmlDoc = xmlhttp.responseXML;
  var strBuffer= "";
  strBuffer = strBuffer +"<table border='1'>";
  var x=xmlDoc.getElementsByTagName("item");
  for (i=0;i<x.length;i++){   
        strBuffer = strBuffer +"<tr><td><a href='";
        strBuffer = strBuffer +(x[i].getElementsByTagName("link")[0].childNodes[0].nodeValue);
        strBuffer = strBuffer +"'>";
        strBuffer = strBuffer +(x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue);
        strBuffer = strBuffer +"</a></td></tr><tr><td>";
        strBuffer = strBuffer +(x[i].getElementsByTagName("description")[0].childNodes[0].nodeValue.substring(0,180));
        strBuffer = strBuffer + "<a href='";
        strBuffer = strBuffer +(x[i].getElementsByTagName("link")[0].childNodes[0].nodeValue);
        strBuffer = strBuffer +"'>... Read More...</a>";
        strBuffer = strBuffer +"</td></tr>";
        if(i==10){
          break;
        }
    }
  strBuffer = strBuffer +"</table>";
  document.getElementById(param).innerHTML =strBuffer;
}

импортируется так (успешно): Затем вызывается в теле

<body onload ="loadRSSFeed('feeddisplay');">
  <h1>All the news that's fit to render</h1>
  <div id="feeddisplay">Feed!</div>
</body>

Но это не появляется! Остальная часть страницы делает так, как и должно ...

Мысли

Ответы [ 2 ]

2 голосов
/ 21 октября 2011

Разве это не должно быть XMLHttp * Запрос *?

1 голос
/ 21 октября 2011

API читателя фида Google является более надежным и имеет несколько дополнительных функций для обработки rss

http://code.google.com/apis/feed/v1/

Кроме того, я думаю, что onLoad не сможет найти div ...?Вы пытались выполнить скрипт после загрузки div-канала ... только мои 2 цента.

...