● 動作指令函數 ●
1、影片片段操控動作(與影片片段對象的同名方法等價):
play()
開始播放當前影片片段(從當前幀開始)。
stop()
停止播放當前影片片段。
prevFrame()
跳至並停止在前一禎。
nextFrame()
跳至並停止在下一禎。
prevScene()
跳至並停止在前一情境的第1幀。
nextScene()
跳至並停止在下一情境的第1幀。
gotoAndPlay([scene,] frame)
跳至scene情境(省略表示當前情境)的frame幀並播放。
gotoAndStop([scene,] frame)
跳至scene情境(省略表示當前情境)的frame幀並停止。
stopDrag()
停止當前的拖拽動作。
2、影片片段相關動作:
duplicateMovieClip(mc, name_string, depth_num)
動態複製影片片段mc,副本取名為name_string,顯示層次為depth_num,副本與源本在同一路徑下,且從第1幀開始播放,源本的狀態不 被複製。顯示層次指的是在該路徑下各影片片段的顯示上下關係,同一層只能有一個影片片段,否則已有者將被刪除,以讓位給新定義者。
removeMovieClip(mc)
刪除動態建立(用duplicationMovieClip、attachMovie)的影片片段mc。
setProperty(mc, property, expression)
設定影片片段mc的property屬性為expression的值。
startDrag(mc, [lockcenter, [x1, y1, x2, y2]])
開始拖拽mc(一個時刻只能有一個影片片段被拖拽)。lockcenter指定是否把mc的中心點對準滑鼠熱點(預設為false),x1,y1,x2,y2指定mc所能移動的範圍(預設為整個顯示區)。
updateAfterEvent(clipEvent)
只能用在影片片段的動作裡,使得一處理完clipEvent事件就重新整理影片顯示。雖然滑鼠和影片片段事件當事件一發生就會執行,但由於影片FPS(每秒 顯示的幀數)的限制,只有當播放至下一幀時事件所作的改動才會被顯現,而這時事件可能已被執行了多次。為了使事件即時作用,就可以在事件處理中調用 updateAfterEvent,從而使動畫顯示平滑。
clipEvent的可取值有:
mouseMove、mouseDown、mouseUp、keyDown、keyUp。
loadMovie(url, mc, [mode])
loadMovieNum(url, level_num, [mode])
載入url所指定的swf影片檔案到影片片段mc(第level_num級影片)下,該操作將會替換掉mc(第level_num級影片)原來的內容。 mode指定傳遞參數的方式(參見getURL)。之後,此mc(_levelN N為level_num的值)便作為載入影片片段的_root。
unloadMovie(mc)
unloadMovieNum(level_num)
卸載影片片段mc(第level_num級影片),可以是原來就有的或用loadMovie或loadMovieNum載入的。比如在1.swf中載入2.swf時寫loadMovie("2.swf",
_root.mc1)(mc1為1.swf主情境下已有的一個影片片段),就可以在1.swf中
用unloadMovie(_root.mc1)或在2.swf中用unload(_root)來卸載2.swf。
3、其他動作:
trace(expression)
測試expression的值並在輸出區顯示(只在預覽中有用)。
set(target, expression)
設定目標路徑字串target所指代的變數、對象的值為expression的值。一般用在該變數的名稱不確定的情況,如:set("a" + i, i)。
call(frame)
執行frame幀的動作語句(不改變當前變數環境,但在frame幀裡的語句中用var聲明的變數在調用後被清除。相當於一個函數體)。
stopAllSounds()
關閉影片的所有聲音。
toggleHighQuality()
使影片顯示品質在low和high之間切換。
loadVariables(url, mc, [mode])
loadVariablesNum(url, level_num, [mode])
從url所指定的檔案讀取資料到影片片段mc(第level_num級影片)下。mode指定傳遞參數的方式(參見getURL)。比如 loadVariables("1.txt", _root),在1.txt中寫:a=Fictiony,則載入後_root.a變數的值就為"Fictiony"。被讀取的檔案格式與通過URL向服務 器端程式發送參數是一樣的,如:a=3&b=4&c=Good+Day 在寫時,=號左邊表示變數名,右邊表示資料(按字串理解),&符用來分隔參數(未分隔的參數定義裡若有多個=,則除第1個外都作資料理解),+ 號用來串連兩個字串(相當於空格),%用來表示url編碼字元(如%26表示&符)。如需要讀入&、+和%字元,則需寫成url編碼字 符形式,分別為:&:%26,+:%2B,%:%25
print(mc, type)
printNum(level_num, type)
printAsBitmap(mc, type)
printAsBitmapNum(level_num, type)
列印影片片段mc(第level_num級影片)。需列印的幀可在編輯時給幀取"#P"標籤來指定。type指定列印的方式,可取值為:
"bmovie" 表示按給定的幀的範圍為邊界列印各幀。可在編輯時給需按此幀範圍為邊界的幀取"#b"標籤來指定。
"bmax" 表示按所有需列印的幀的範圍之和為邊界列印各幀。
"bframe" 表示按各列印幀的範圍為邊界列印各幀。當要列印的幀裡存在顏色效果或透明度設定時,需用printAsBitmap或printAsBitmapNum來 列印以獲得正確效果,一般情況下最好用print或printNum來列印以便擷取向量圖的最佳效果。
getURL(url, window, [mode])
開啟url所表示的連結,window表示所使用的頁(視窗),可取值為:
"_self" 在當前活動頁開啟
"_blank" 在新視窗內開啟
"_parent" 在當前頁的上一級架構頁開啟
"_top" 在當前架構的基層架構頁開啟
mode指定傳遞參數的方式,可為"GET"(預設)或"POST"。"GET"表示將參數列
表直接添加到url之後,與之一起提交,一般適用與參數較少且簡單的情況,
"POST"表示將參數列表單獨提交,在速度上會慢一些,但不容易遺失資料,適
用與參數較多較複雜的情況。
fscommand(cmd_string, arg_string)
執行主機端指令。cmd_string指定所要執行的指令名,可為FlashPlayer的指令或瀏覽器JavaScript函數。arg_string聲明該指令所用到的參數。
FlashPlayer的指令有(只能在獨立播放器時使用):
"fullscreen" 是否全屏播放,參數為true或false
"allowscale" 是否允許通過展開視窗縮放影片,參數為true或false
"showmenu" 是否在播放器顯示菜單,參數為true或false
"trapallkeys" 是否屏蔽播放器的快速鍵(如Esc表示停止播放並恢複視窗顯示),參數為true或false。但Alt+F4系統快速鍵(關閉視窗)依然可用。
"exec" 運行arg_string所指定的檔案。如:fscommand("exec", "quit" 退出影片。無參數。 對於JavaScript的函數,在定義時格式必須為movieID_Dofscommand(cmd_string,
arg_string),其中movieID用在網頁中定義Flash動畫時的object標籤的id屬性或embed標籤的name屬性值代替。如:
〈object classid="clsid27CDB6E-AE6D-..." codebase="http://www.macromedia.com/..."
width="400" height="300" id="myMovie"〉
〈param name=movie value="1.swf"〉〈param name=quality value=high〉
〈embed src="1.swf" quality=high pluginspage="http://www.macromedia.com..."
type="application/x-shockwave-flash" width="400" height="300" id="myMovie"〉
〈/embed〉
〈/object〉
這樣定義的Flash動畫對應的JavaScript函數就是:
myMovie_Dofscommand(cmd_string, arg_string) {...}