NewsFeed Sample Overview
The NewsFeed sample application demonstrates how you can get data in the XML format from an Internet connection.
For information on creating the sample application project in the IDE, see Creating Sample Applications.
The following figure illustrates the main screen of the NewsFeed.
Figure: NewsFeed screen
The application opens with the first page of the news feed. To move to the next page, touch the screen.
Source Files
You can create and view the sample application project including the source files in the IDE.
File name | Description |
---|---|
css/style.css | This file contains CSS styling for the application UI. |
index.html | This is a starting file from which the application starts loading. It contains the layout of the application screen. |
main.js | This file defines the operations of the application, such as sending requests and receiving data. |
Implementation
The following code in the main.js file sends an XML request and receives the return data:
xmlhttp = new XMLHttpRequest(); xmlhttp.open(XML_METHOD, XML_ADDRESS, false); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState === 4) { if (xmlhttp.status === 200) { clearElmText(objNews); xmlDoc = xmlhttp.responseXML; dataItem = xmlDoc.getElementsByTagName('item'); if (dataItem.length > 0) { lengthNews = (dataItem.length > NUM_MAX_NEWS) ? NUM_MAX_NEWS : dataItem.length; for (i = 0; i < lengthNews; i++) { arrayNews.push( { title: dataItem[i].getElementsByTagName('title')[0].childNodes[0].nodeValue, link: dataItem[i].getElementsByTagName('link')[0].childNodes[0].nodeValue }); arrayNews[i].title = trimText(arrayNews[i].title, NUM_MAX_LENGTH_SUBJECT); } resetNewsIndex(); showNews(); } else { addElmText(objNews, 'subject', MSG_ERR_NODATA); } xmlhttp = null; } } }; xmlhttp.send();