Flash+XML實現新聞系統

來源:互聯網
上載者:User
通過這個例子可以學習:
1>如何載入與解析XML;
2>如何用TextField.StyleSheet格式化文本
先看下XML的結構:

<?xml version="1.0" encoding="UTF-8"?>
<csdeny>
<news date="2006-12-22" title="中國繭子"><content>設計網站,羽化成蝶·美麗如你</content></news>
<news date="2006-12-22" title="CCTV"><content>中國中央電視台</content></news>
<news date="2006-12-22" title="QQ"><content>QQ聊天工具</content></news>
<news date="2006-12-22" title="SOHU"><content>我的搜狐部落格</content></news>
<news date="2006-12-22" title="盛世龍騰"><content>河南盛世龍騰電子科技有限公司</content></news>
<news date="2006-12-22" title="MYBJOJO"><content>MYBJOJO的個人網站</content></news>
<news date="2006-12-22" title="尋泥作坊"><content>我一個同事的網站</content></news>
</csdeny>
下面 就是在flash中的工作了:
1>建立flash文檔,設定舞台大小(我的設定是150*200)
2>拖一個TextArea組件放入舞台,設定大小和舞台大小一致,執行個體名為mytextarea;
3>給第一幀添加代碼:

var myStyles:TextField.StyleSheet=new TextField.StyleSheet();//申明myStyles為StyleSheet類
myStyles.setStyle(".title",                               //設定標題顯示樣式
                  {fontFamily: ’宋體,_sans’,
                  fontSize: ’12px’,
                  color: ’#003300’,
                  textAlign: ’left’});
myStyles.setStyle(".date",                                //設定時間顯示樣式
                  {fontFamily: ’Arial’,
                  fontSize: ’9px’,
                  color: ’#990000’,
                  textAlign: ’right’});
myStyles.setStyle(".content",                             //設定內容顯示樣式
                  {fontFamily: ’宋體,_sans’,
                  fontSize: ’12px’,
                  color: ’#003300’,
                  textAlign: ’left’});
var newsXML:XML=new XML();                               //申明XML類
newsXML.ignoreWhite=true;                                //忽略空白
newsXML.onLoad=function(success){
    if(success){
        parseXML();                                      //如過載入XML成功,就調用parseXML()解析XML
    }
}
newsXML.load("news.xml");                                //載入外部XML
function parseXML(){                                     //parseXML()的定義
    var e=newsXML.firstChild.childNodes;                  
        var total=e.length;
        mytextarea.wordWrap=true;                        //設定TextArea可以自動換行
        mytextarea.editable=false;                       //TextArea不可編輯
        mytextarea.hScrollPolicy=off;                    //TextArea橫向捲軸關閉
        mytextarea.html=true;                            //支援XML
        mytextarea.styleSheet=myStyles;                  //調用前面設定好的樣式
        for(i=0;i<total;i++){                            //解析XML並格式化文本
            mytextarea.text+="<.title>"+e.attributes.title+"</.title>";
            mytextarea.text+="<.date>"+e.attributes.date+"</.date>";
            mytextarea.text+="<.content>"+e.firstChild.firstChild.nodeValue+"</.content><br>";
        }
}
好了,很簡單吧
可以對myStyles擴充,flash支援的html標籤還有不少

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.