文/ Yania (Erin Lin)
Yania針對Flash 使用者在Flash 互動設計過程中最可能遇到的問題做一系列專題整理,希望對Flash設計者們能有一些小小的幫助。 =)
1. 擾人的gotoAndStop("場景名稱", 影格編號)
很多Flash使用者都會有這樣的經驗:在元件(MovieClip)中設計一個按鈕並下了_root.gotoAndPlay("場景名稱", 1); ,可是測試時就給你完全沒反應,動也不動。這時你就會質疑,為什麼咧?我不是有下_root讓它指向根目錄時間軸?在心中吶喊的千次萬次為什麼結果還是搞不懂...
---------------------------------------------
Tip1:
gotoAndPlay("場景名稱", frame) 或 gotoAndStop("場景名稱", frame),
只能在root時間軸使用喔!
---------------------------------------------
其實,如果你有使用Flash help的習慣,相信你已經找到解答,在Flash字典中指出在gotoAndPlay() or gotoAndStop()中加入場景名稱的用法,只能於root時間軸上使用,在元件或其他物件裡面的時間軸都是無效的。
如果你需要在元件中設定gotoAndPlay("場景名稱", frame) or gotoAndStop("場景名稱", frame)的話,可以參考下列技巧來應用。
應用技巧:
在root時間軸的影格一中鍵入下列Action Script
---------------------------------------------
複製內容到剪貼板
代碼:
//此程式是寫在主場景時間軸影格上
//單一場景function
function goScene(frame){
gotoAndStop("場景名稱", frame);
}
//或者是:
//以下可多場景共用同一function,場景名稱請自行更換
function goSceneNum(scene, frame) {
switch (scene) {
case "場景一" :
gotoAndStop("場景一", frame);
break;
case "場景二" :
gotoAndStop("場景二", frame);
break;
}
//以此類推
}
---------------------------------------------
使用方法:
使用方法很簡單,你可以在元件或其他物件中加入下列AS即可。
---------------------------------------------
複製內容到剪貼板
代碼:
_root.goScene(影格編號);
_root.goSceneNum("場景一", 1);
---------------------------------------------