3、 新建一個FLASH文檔,在舞臺放置兩個多行動態(tài)文本框,實例名分別為titles和contents,分別放新聞標題及內容。 本來,筆者打算直接把index.html直接讀進titles文本框里,可惜鏈接放進去就會跳轉頁面,如果要避免的話,必須通過字符串分析把鏈接改成asfunction協(xié)議,此法麻煩,而且容易受內容影響而出錯。所以,還是再建一個XML文檔提供給FLASH去讀取好了。 在index.html所在目錄下,建一XML文件news.xml
<?xml version="1.0" encoding="GB2312"?> <news> <a href="page1.html" title="news1"/> <a href="page2.html" title="news2"/> <a href="page3.html" title="news3"/> </news> 在Flash里新建一圖層,添加幀代碼: System.useCodepage = true; titles.html = true; var titlesLv = new XML(); titlesLv.load("news.xml"); titlesLv.onLoad = function(success) { if (success) { var titles_arr = new Array(); var hrefs_arr = new Array(); titles.htmlText = ""; for (var i in titlesLv.childNodes[0].childNodes) { titles_arr[i] = titlesLv.childNodes[0].childNodes[i].attributes.title; hrefs_arr[i] = titlesLv.childNodes[0].childNodes[i].attributes.href; } for (var i in titles_arr) { titles.htmlText += "<br><a href=\"asfunction:loadNews,"+hrefs_arr[i]+"\">"+titles_arr[i]+"</a>"; } } };
此段代碼是把解析XML文件的,不屬本教程的重點,故不再贅述。 這其中的loadNews函數是調用新聞的,在下面添加:
var contentsLv = new LoadVars(); function loadNews(href) { contentsLv.load(href); fscommand("setAddress",href)//讓新聞加載的時候,修改地址欄#后的內容。這將在JS里定義。 } contents.html = true; contentsLv.onData = function(src) { fscommand("setTitle",getTitle(src))//setTitle修改頁面的標題,也在JS里定義。getTitle從html字符串里獲得標題。該函數在AS里定義 contents.htmlText = getContents(src);//getContents從html字符串里獲取正文內容,將在AS里定義。
下面定義這兩個字符串分析函數: 分頁html的格式:
<title>新聞標題</title><script language="javascript" src="toNews.js"></script><body>正文內容</body>
function getTitle(str){ var beginIndex=str.indexOf("<title>")+7//標題符從<title>標簽開始 var endIndex=str.indexOf("</title>")//結束于</title>標簽 return str.slice(beginIndex,endIndex)//標記后用slice函數截得 } function getContents(str){ var beginIndex=str.indexOf("</title>")+8//正文可以從</title>開始,也可以選擇<body>標簽 return str.slice(beginIndex)//標記后用slice截取。 } };
保存FLA文件到index.html所在目錄,文件名為index_flash.fla。然后點“文件”-“發(fā)布設置”,在HTML選項卡里,模板下拉選擇“帶FSCOMMAND跟蹤的FLASH”,然后點“發(fā)布”按鈕。接著在“格式”選項卡里把HTML勾去掉。
出處:藍色理想
責任編輯:moby
上一頁 Flash 網站的 SEO [3] 下一頁 Flash 網站的 SEO [5]
◎進入論壇Flash專欄版塊參加討論
|