SWF動畫文件中的圖像、聲音、文字和動畫等都是固化在其中的,所以新的問題又出現了,就是如何在SWF文件中實現動態數據的顯示?可用Flash中的FS Command來實現。以下,是如何在Flash制作動態網頁 的具體操作步驟,希望對大家有所幫助!
進入 Flash 4.0,新建一個文件或打開一個已經做好的Flash頁面。選擇Insert/layer,新建一個層。確認新層為當前層後,用矩形工具畫一無邊框線的藍色長方形(大小約為100px×120px)作為底色。再選擇Text(文本)工具,設置字體為黑體、字號為16、顏色為白色後,寫上文字“公元年 月”、“星期”、“時間”三行文字。
鎖定該層後,再新建一層,確認新建層為當前層後,選擇Text工具並選中Text Field按鈕。設置字體為Arial、字色白色、字號為16號,在公元後畫一個高度為一個單位、寬度為4個單位的長方形文本框。選擇Arraw(箭頭) 工具,點擊剛畫好的矩形文本框,使它處於選中狀態。選擇Modify/Text Field,出現Text Field Properties對話框。在Ariable(變量)中輸入Year,在Option中選中Disable Editing和Disable Selecting(使得顯示的年份不可修改)兩項。
用同樣的方法,在“年”後畫一文本框,取變量名為“Month”,用於顯示月份,在“星期”上畫一文本框,取變量名為“Date”,用於顯示幾號,在“星期”右畫一文本框,取變量名為“Day”,用於顯示星期幾,在“時間”右的三個格子裡分別畫三個文本框,取變量名為Hour(時)、Minute(分)、 Second(秒),分別用於顯示時、分、秒。注意的是,表示幾號的文本框的字號設大一點,比如36號,表示時間的文本框的字號設小一點,比如10號。設好後的效果如前面。
鎖定該層後,再新建一層,確認新建層為當前層後,選擇Insert/New Symbol,出現對話框Symbol Properties,設置確定後,對Movie Clip(電影夾)進行如下編輯:雙擊第一幀的小圓圈,出現Frame Properties對話框,選Action,在Action下面點“+”號,在下拉菜單中選FS Command,在Command中填入Showrl(顯示日歷),其作用是向網頁中發送一個名為Showrl的FS Command。在第二幀插入一空白幀,其作用是不斷向網頁發送Showrl命令。回到場景中,按Ctrl+l,打開Library,把 FS Command拖到場景中。保存文件取名為rl.fla(日歷)。同時按默認的文件名進行Publish(發布)。即選File/Publish Setting,出現對話框,設置後,點Publish就生成rl.html和rl.swl兩個文件。這時用浏覽器去看rl.html時,還看不到日期與時間,還必須進行如下設置:以Frontpage2000為例,打開Frontpage,選擇新建,選插入/文件,在文件名浏覽框中選擇 rl.html。(在Dreamwaever中直接插入動畫文件rl.swl)。以Index.htm保存文件,然後在rl.htm的HTML源文件的〈head〉〈/head〉之間加入如下代碼,再次保存後就搞定了。
〈script language=″JAVASCRIPT″〉
var InternetExplorer=navigator.appName.indexOf(″Microsoft″)==-1;
function rl_DOFSCommand(command,args)
{
var movie=InternetExplorer ? rl:document.rl
var now=new Date();
if(now.getDay()==0)date = ″日″
if(now.getDay()==1)date = ″一″
if(now.getDay()==2)date = ″二″
if(now.getDay()==3)date = ″三″
if(now.getDay()==4)date = ″四″
if(now.getDay()==5)date = ″五″
if(now.getDay()==6)date = ″六″
if(command=″showrl″){
movie.setvariable(″/:year″,now.getYear());
movie.setvariable(″/:minute″,now.getMinutes());
movie.setvariable(″/:hour″,now.getHours());
movie.setvariable(″/:second″,now.getSeconds());
movie.setvariable(″/:date″,date);
movie.setvariable(″/:month″,now.getMonth()+1);
movie.setvariable(″/:day″,now.getDate());
}
}
〈/script〉
〈script language=″VBscript″〉
sub rl_FSCommand(ByVal command,ByVal args)
call rl_DOFSCommand(command,args)
end sub
〈/SCript〉
其中var movie……行以前是Flash的FS Command調用Javascript的固定格式,照搬就是了,var now……行是定義一個Now的變量,並初始為當天。if(now.getDay()……“日”到if(now.getDay()……“六”行是把顯示星期的數字改為漢字顯示以符合中國人的習慣。if(command……行表示當網頁接受命令為Showrl的FS Command時就執行{ ...}中的內容。Movie.setvariable中的Movie是rl的標識(ID),就是獲指定動畫(rl)的每個變量的值。最後5行是IE浏覽器所固定的,如果你用Netscape浏覽器可以不理會這5行。保存後,在浏覽器中就可以看到如前面如果不滿意,可以在Flash中進一步調整字體、字號、顏色等,發布後再用浏覽器試試。注意:最好幾個文件放入同一文件,這樣修改起來簡單)。
小編為大家編輯的如何在Flash制作動態網頁希望對大家有所幫助!