0

有没有办法显示 Flash as2 RSS 提要的项目描述文本。我的代码在下面列出。虽然,它只显示标题。任何帮助都会很棒。

stop();
xmlLoad = new XML();
xmlLoad.load("http://www.astrology.com/horoscopes/monthly-overview.rss");
xmlLoad.ignoreWhite = true;
xml_holder.html = true;
xmlLoad.onLoad = function(success){
//if successful
if(success && xmlLoad.status == 0){      
//reset the text
xml_text="";   
//list of items
var xmlItems:XML = xmlLoad.firstChild.firstChild;
for (var m = 0; m<xmlItems.childNodes.length; m++) {
 //grab each item
 if (xmlItems.childNodes[m].nodeName == "item") {
    for (var n = 0; n<xmlItems.childNodes[m].childNodes.length; n++) {
       if (xmlItems.childNodes[m].childNodes[n].nodeName == "link") {
          //grab the link of the item
          itemlink=xmlItems.childNodes[m].childNodes[n].firstChild.toString();   
       }
       if (xmlItems.childNodes[m].childNodes[n].nodeName == "title") {
          //grab the title of the item
          itemtitle=xmlItems.childNodes[m].childNodes[n].firstChild.toString();   
       }
    }
    //add the current item
    xml_text+= "<a href=\""+itemlink+"\">"+itemtitle+"</a><br><br>";
    }   
    }         
    }
    //set the text
    xml_holder.htmlText = xml_text;
    }
4

1 回答 1

0

您可以像获取标题和链接一样获取描述。由于 description 在此提要中包含 HTML,因此您需要使用 nodeValue 属性访问它。

我添加了一个开关来测试 nodeNames 和一些 vars 声明。

xmlLoad.onLoad = function(e) {
      var xmlItems:XMLNode = xmlLoad.firstChild.firstChild;
      var itemlink:String,itemtitle:String,itemdesc:String = '';

      for (var m:Number = 0; m<xmlItems.childNodes.length; m++) {
         if (xmlItems.childNodes[m].nodeName == "item") {
            var article:Array = xmlItems.childNodes[m].childNodes
            itemlink = itemtitle = itemdesc = '';
            for (var n:Number = 0; n<article.length; n++) {             
                switch (article[n].nodeName) {
                    case "link":
                        itemlink=article[n].firstChild.toString();  
                        break;
                    case "title":
                        itemtitle=article[n].firstChild.toString();  
                        break;  
                    case "description":
                        itemdesc=article[n].firstChild.nodeValue;  
                        break;
                }              
            }
            xml_text+= "<a href=\""+itemlink+"\"><u>"+itemtitle+"</u></a><br>" + itemdesc+ "<br><br>";
         }   
      }   

}   
于 2013-10-15T12:06:46.173 回答