Flash 動作腳本之:資料速查(17)_Flash教程
推薦:Flash 動作腳本之:資料速查(16)解剖一個腳本范例解剖一個腳本范例為了讓大家對動作腳本有個大概的熟悉,本講對一個腳本進行了剖析。在下面這個動畫范例中,當用戶把小蟲拖到捕殺器上時,小
使用ActionScript的語法使用ActionScript的語法
用ActionScript編寫腳本時,假如使用正常模式的動作面板,通過從菜單和列表選擇選項,可以創建簡單的動作。 要想用ActionScript編寫功能強大的腳本,你就必須深入了解Flash 5的ActionScript腳本語言。
象其它腳本語言一樣,ActionScript也有變量、函數、對象、操作符、保留要害字等語言元素,有它自己的語法規則。ActionScript答應用戶創建自己的對象和函數。ActionScript的語法和風格與JavaScript非常相似,但不完全相同。ActionScript擁有自己的句法和標點符號使用規則,這些規則規定了一些字符和要害字的含義,以及它們的書寫順序。例如,在英語中句號結束一個句子,而在ActionScript中則用分號結束一個語句。
下面列出ActionScript的一些通用語法規則。大多數ActionScript術語也都有它們自己的具體要求。對于某個專門術語的規則,卻參閱ActionScript詞典中相關的詞條。
一、點語法
在ActionScript中,點(.)被用來指明與某個對象或電影剪輯相關的屬性和方法。它也用于標識指向電影剪輯或變量的目標路徑。點語法表達式由對象或電影剪輯名開始,接著是一個點,最后是要指定的屬性、方法或變量。例如,_X電影剪輯屬性指出編輯區中電影剪輯的X軸位置。表達式ballMC._x是指電影剪輯實例ballMC的_X屬性。
作為另一個例子,submit是在電影剪輯form中設置的一個變量,而form又是嵌套在電影剪輯shoppingCart中的電影剪輯。表達式shoppingCart.form.submit = true的作用是設置實例form的submit變量的值為true。
表達一個對象或電影剪輯的方法遵循相同的模式。例如,ballMC實例的play方法移動ballMC的時間軸播放頭,就象下面的語句:
ballMC.play();
點語法使用兩個非凡的別名:_root 和_parent 。別名_root 是指主時間軸。可以使用_root別名創建一個絕對路徑。例如,下面的語句調用主時間軸中電影剪輯functions的buildGameBoard函數:
_root.functions.buildGameBoard();
可以用別名_parent引用嵌套當前電影剪輯的電影剪輯。也可以用_parent創建一個相對目標路徑。 例如,假如電影剪輯dog被嵌套在電影剪輯animal之中,那么,在實例dog上的下列語句告訴animal停止播放:
_parent.stop();
二、斜杠語法
Flash 3和4使用斜杠語法指出電影剪輯或變量的目標路徑。Flash 5播放器仍然支持這種語法,但不推薦使用。在斜杠語法中,斜杠被用來取代點,用以標明電影剪輯或變量的路徑。 要指出一個變量,可以在變量前加上冒號,如下所示:
myMovieClip/childMovieClip:myVariable
可以用點語法取代上述斜杠語法表示的目標路徑:
myMovieClip.childMovieClip.myVariable
斜杠語法在tellTarget動作中使用最普遍,但這種動作在Flash 5中已不再推薦使用。
注:現在,寧愿使用with動作而不使用tellTarget,因為with動作與點語法更兼容。
三、大括號
ActionScript語句用大括號({ })分塊,如下面的腳本所示:
on(release) {
myDate = new Date();
currentMonth = myDate.getMonth();
}
四、分號
ActionScript語句用分號結束,但假如你省略語句結尾的分號,Flash仍然可以成功地編譯你的腳本。例如,下面的語句用分號結束:
column = passedDate.getDay();
row = 0;
同樣的語句也可以不寫分號:
column = passedDate.getDay() row = 0
五、圓括號
定義一個函數時,要把參數放在圓括號中:
function myFunction (name, age, reader){
...
}
調用一個函數時,也要把要傳遞的參數放在圓括號中:
myFunction ("Steve", 10, true);
圓括號也可以用來改變ActionScript的優先級,或使自己編寫的ActionScript語句更輕易閱讀。
也可以用圓括號來計算點語法中點左邊的表達式。例如,在下面的語句中,圓括號使表達式new color(this) 得到計算,并創建了一個新的顏色對象:
onClipEvent(enterFrame) {
(new Color(this)).setRGB(0xffffff));
}
在上例中,假如不使用圓括號,就需要在代碼中增加一個語句來計算它:
onClipEvent(enterFrame) {
myColor = new Color(this);
myColor.setRGB(0xffffff);
}
六、字母的大小寫
在ActionScript中,只有要害字區分大小寫。對于其余的ActionScript,可以使用大寫或小寫字母。例如,下面的語句是等價的:
cat.hilite = true;
CAT.hilite = true;
但是,遵守一致的大小寫約定是一個好的習慣。這樣,在閱讀ActionScript代碼時更易于區分函數和變量的名字。假如在書寫要害字時沒有使用正確的大小寫,你的腳本將會出現錯誤。當在動作面板中啟用彩色語法功能時,用正確的大小寫書寫的要害字以藍色顯示。
七、注釋
需要記住一個動作的作用時,可在動作面板中使用comment語句給幀或按鈕動作添加注釋。假如你在協作環境中工作或給別人提供范例,添加注釋有助于別人對你編寫的腳本的理解。
在動作面板中選擇comment(注釋)動作時,字符//被插入到腳本中。假如在你創建腳本時加上注釋,即使是簡單的腳本也易于理解:
on(release) {
// 建立新的日期對象
myDate = new Date();
currentMonth = myDate.getMonth();
// 把用數字表示的月份轉換為用文字表示的月份
monthName = calcMonth(currentMonth);
year = myDate.getFullYear();
currentDate = myDate.getDat ();
}
在腳本窗口,注釋內容用粉紅色顯示。它們的長度不限,且不影響導出文件的大小。
八、要害字
ActionScript保留一些單詞,專用與本語言之中。因此,不能用這些保留字作為變量、函數或標簽的名字。下表列出了ActionScript中所有的要害字:
break
分享:Flash 動作腳本之:資料速查(15)使用ActionScript編寫腳本二、腳本的規劃和調試當你為整個動畫編寫腳本時,腳本的數量和種類可能很大。決定使用哪些動作,怎樣有效地構造腳本,腳本應該放在
- 相關鏈接:
- 教程說明:
Flash教程-Flash 動作腳本之:資料速查(17)。