《多媒體技術(shù)與網(wǎng)頁設(shè)計(jì)》課件第16章_第1頁
《多媒體技術(shù)與網(wǎng)頁設(shè)計(jì)》課件第16章_第2頁
《多媒體技術(shù)與網(wǎng)頁設(shè)計(jì)》課件第16章_第3頁
《多媒體技術(shù)與網(wǎng)頁設(shè)計(jì)》課件第16章_第4頁
《多媒體技術(shù)與網(wǎng)頁設(shè)計(jì)》課件第16章_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第16章Flash交互16.1編輯環(huán)境16.2常量和變量16.3函數(shù)16.4屬性16.5運(yùn)算符和表達(dá)式16.6播放控制語句16.7賦值語句16.8屬性設(shè)置語句16.9跳轉(zhuǎn)調(diào)用語句16.10條件語句16.11循環(huán)語句16.12URL地址鏈接語句16.13應(yīng)用實(shí)例

16.1編輯環(huán)境

在Flash動作面板(如圖16.1所示)中可以為兩種對象設(shè)置命令,即關(guān)鍵幀和按鈕。為關(guān)鍵幀設(shè)置命令可以使得動畫播放到該幀時(shí)響應(yīng)一些預(yù)先設(shè)定的命令,設(shè)置了命令之后該關(guān)鍵幀上將出現(xiàn)一個(gè)a。為按鈕設(shè)置動作命令可以使用戶在對該按鈕進(jìn)行操作時(shí)產(chǎn)生某種響應(yīng)。圖16.1Flash動作面板16.2常?量?和?變?量

1.常量

(1)數(shù)值型常量:由具體數(shù)字表示的定量參數(shù)。

(2)字符串型常量:由若干字符組成表達(dá)某一特定含義的常量,其兩端必須用引號標(biāo)明,如“ABC”等。

(3)邏輯型常量:用來判斷某一條件是否成立的常

量,有True和False兩種取值。Flash中的常用常量如表16.1所示。

2.變量

所謂變量,是指為用戶提供的一個(gè)可變的參數(shù),用戶可以用變量來保存或改變語句中的參數(shù)值,變量可以是數(shù)值、字符串、邏輯值或表達(dá)式。

16.3函數(shù)

函數(shù)是用來對常量、變量進(jìn)行某種運(yùn)算的方法,如獲得整數(shù)、產(chǎn)生隨機(jī)數(shù)等。主要函數(shù)有:

(1)?Array([numElements:Number],[elementN:Object])創(chuàng)建一個(gè)新的空數(shù)組,或者將指定的元素轉(zhuǎn)換為數(shù)組。

(2)?asfunction(function:String,parameter:String):用于HTML文本字段中URL的特殊協(xié)議,該協(xié)議允許HREF鏈接調(diào)用ActionScript函數(shù)。

(3)?Boolean(expression:Object):將參數(shù)expression轉(zhuǎn)換為布爾值并返回true或false。

(4)?call(frame:Object):在被調(diào)用幀中執(zhí)行腳本,而不將播放頭移動到該幀。

(5)?chr(number:Number):將ASCII代碼數(shù)字轉(zhuǎn)換為字符。

(6)?clearInterval(intervalID:Number):停止setInterval()調(diào)用。

(7)?duplicateMovieClip(target:Object,newname:String,

depth:Number):當(dāng)SWF文件正在播放時(shí),創(chuàng)建一個(gè)影片剪輯的實(shí)例。

(8)?escape(expression:String):將參數(shù)轉(zhuǎn)換為字符串,并以URL編碼格式對其進(jìn)行編碼,在這種格式中,所有非字母數(shù)字的字符都替換為%十六進(jìn)制序列,%用于引入轉(zhuǎn)義符。

(9)?eval(expression:Object):按照名稱訪問變量、屬性、對象或影片剪輯。

(10)?fscommand(command:String,parameters:String):使SWF文件能夠與FlashPlayer或承載FlashPlayer的程序(如Web瀏覽器)進(jìn)行通信。

(11)?getProperty(my_mc:String,property):返回影片剪輯my_mc指定屬性的值。

(12)?getTimer():返回自SWF文件開始播放時(shí)起已經(jīng)過的毫秒數(shù)。

(13)?getURL(url:String,[window:String],[method:String]):將來自特定URL的文檔加載到窗口中,或?qū)⒆兞總鬟f到位于所定義的URL的另一個(gè)應(yīng)用程序

中。

(14)?getVersion():返回一個(gè)包含F(xiàn)lashPlayer版本和平臺信息的字符串。

(15)?gotoAndPlay([scene:String],frame:Object):將播放頭轉(zhuǎn)到場景中指定的幀并從該幀開始播放。

(16)?gotoAndStop([scene:String],frame:Object):將播放頭轉(zhuǎn)到場景中指定的幀并停止播放。

(17)?ifFrameLoaded([scene:String],frame:Object):檢查特定幀的內(nèi)容是否在本地可用。

(18)?int(value:Number):通過截?cái)嘈?shù)值將小數(shù)轉(zhuǎn)換為整數(shù)值。

(19)?isFinite(expression:Object):計(jì)算expression,

如果結(jié)果為有限數(shù),則返回true;如果為無窮大或負(fù)無窮大,則返回false。

(20)?isNaN(expression:Object):計(jì)算參數(shù),如果值為NaN(非數(shù)字),則返回true。

(21)?length(expression:String,variable:Object):返回指定字符串或變量的長度。

(22)?loadMovie(url:String,target:Object,[method:String]):在播放原始SWF文件的同時(shí)將SWF文件或JPEG文件加載到FlashPlayer中。

(23)?loadMovieNum(url:String,level:Number,[method:String]):在播放原來加載的SWF文件的同時(shí)將SWF文件或JPEG文件加載到FlashPlayer的某個(gè)級別中。

(24)?loadVariables(url:String,target:Object,[method:String]):從外部文件(如文本文件,或由ColdFusion、CGI腳本、ActiveServerPage(ASP)、PHP或Perl腳本生成的文本)中讀取數(shù)據(jù),并設(shè)置目標(biāo)影片剪輯中變量的值。

(25)?loadVariablesNum(url:String,level:Number,[method:String]):從外部文件(如文本文件,或由ColdFusion、CGI腳本、ASP、PHP或Perl腳本生成的文本)中讀取數(shù)據(jù),并設(shè)置FlashPlayer的某個(gè)級別中的變量的值。

(26)?mbchr(number:Number):將ASCII代碼數(shù)字轉(zhuǎn)換為多字節(jié)字符。

(27)?mblength(string:String):返回多字節(jié)字符串的長度。

(28)?mbord(character:String):將指定字符轉(zhuǎn)換為多字節(jié)數(shù)字。

(29)?mbsubstring(value:String,index:Number,count:

Number):從多字節(jié)字符串中提取新的多字節(jié)字符串。

(30)?MMExecute(command:String):允許從ActionScript中發(fā)出FlashJavaScriptAPI(JSAPI)命令。

(31)?nextFrame(?):將播放頭轉(zhuǎn)到下一幀。

(32)?nextScene(?):將播放頭轉(zhuǎn)到下一場景的第1幀。

(33)?Number(expression:Object):將參數(shù)expression轉(zhuǎn)換為數(shù)字。

(34)?Object([value:Object]):創(chuàng)建一個(gè)新的空對象,或者將指定的數(shù)字、字符串或布爾值轉(zhuǎn)換為一個(gè)對象。

(35)?on(mouseEvent:Object):指定觸發(fā)動作的鼠標(biāo)事件或按鍵。

(36)?onClipEvent(movieEvent:Object):觸發(fā)為特定影片剪輯實(shí)例定義的動作。

(37)?ord(character:String):將字符轉(zhuǎn)換為ASCII代碼數(shù)字。

(38)?parseFloat(string:String):將字符串轉(zhuǎn)換為浮點(diǎn)

數(shù)。

(39)?parseInt(expression:String,[radix:Number]):將字符串轉(zhuǎn)換為整數(shù)。

(40)?play():在時(shí)間軸中向前移動播放頭。

(41)?prevFrame():將播放頭轉(zhuǎn)到前一幀。

(42)?prevScene():將播放頭轉(zhuǎn)到前一場景的第1幀。

(43)?random(value:Number):返回一個(gè)隨機(jī)整數(shù),該整數(shù)介于0到value之間。

(44)?removeMovieClip(target:Object):刪除指定的影片剪輯。

(45)?setInterval(functionReference:Function,interval:Number,[param:Object],objectReference:Object,methodName:String):在播放SWF文件時(shí),每隔一定時(shí)間就調(diào)用函數(shù)或?qū)ο蟮姆椒ā?/p>

(46)?setProperty(target:Object,property:Object,expression:Object):當(dāng)影片剪輯播放時(shí),更改影片剪輯的屬性值。

(47)?showRedrawRegions(enable:Boolean,[color:Number]):使調(diào)試器播放器能夠描畫出正在重繪的屏幕區(qū)域的輪廓。

(48)?startDrag(target:Object,[lock:Boolean],[left,top,right,bottom:Number]):使target影片剪輯在影片播放過程中可拖動。

(49)?stop():停止當(dāng)前正在播放的SWF文件。

(50)?stopAllSounds():在不停止播放頭的情況下停止SWF文件中當(dāng)前正在播放的所有聲音。

(51)?stopDrag():停止當(dāng)前的拖動操作。

(52)?String(expression:Object):返回指定參數(shù)的字符串表示形式。

(53)?substring(string:String,index:Number,count:Number):提取部分字符串。

(54)?targetPath(targetObject:Object):返回包含movieClipObject的目標(biāo)路徑的字符串。

(55)?tellTarget(target:String,statement(s)):將在statements參數(shù)中指定的指令應(yīng)用于在target參數(shù)中指定的時(shí)間軸。

(56)?toggleHighQuality():在FlashPlayer中啟用和禁用消除鋸齒功能。

(57)?trace(expression:Object):計(jì)算表達(dá)式并輸出結(jié)

果。

(58)?unescape(string:String):將參數(shù)x作為字符串計(jì)算,將該字符串從URL編碼格式解碼(將所有十六進(jìn)制序列轉(zhuǎn)換為ASCII字符),并返回該字符串。

(59)?unloadMovie(target:Object):從FlashPlayer中刪除通過loadMovie()加載的影片剪輯。

(60)?unloadMovieNum(level:Number):從FlashPlayer中刪除通過loadMovieNum()加載的SWF或圖像。

(61)?updateAfterEvent():當(dāng)在處理函數(shù)內(nèi)調(diào)用它或使用setInterval()調(diào)用它時(shí)更新顯示。

16.4屬性

屬性用來表示目標(biāo)對象的特性。它主要包括:

(1)?_alpha:對象的透明度。

(2)?_currentframe:當(dāng)前幀的位置。

(3)?_framesloaded:指定動畫作品被調(diào)入的進(jìn)度。

(4)?_name:獲取目標(biāo)對象引用名稱。

(5)?_height:對象的高度。

(6)?_rotation:對象的旋轉(zhuǎn)。

(7)?_soundbuftime:設(shè)置音頻播放緩沖時(shí)間。

(8)?_url:對象的URL。

(9)?_visible:對象是否可見。

(10)?_width:對象的寬度。

(11)?_x:對象的X軸位置。

(12)?_y:對象的Y軸位置。

(13)?_xmouse:鼠標(biāo)的X軸坐標(biāo)。

(14)?_ymouse:鼠標(biāo)的Y軸坐標(biāo)。

(15)

this:引用對象或影片剪輯實(shí)例。

16.5運(yùn)算符和表達(dá)式

1.算術(shù)運(yùn)算符

算術(shù)運(yùn)算符及其含義如表16.2所示。

2.比較運(yùn)算符

比較運(yùn)算符及其含義如表16.3所示。

3.邏輯運(yùn)算符

邏輯運(yùn)算符及其含義如表16.4所示。

4.字符串運(yùn)算符

字符串運(yùn)算符及其含義如表16.5所示。16.6播放控制語句

1.?stop和play語句

stop語句可以停止當(dāng)前動畫播放并使播放停留在當(dāng)前幀;play語句可以使停止的動畫連續(xù)播放。

Flash提供了以下8種按鈕響應(yīng):

(1)?press:按下,當(dāng)在按鈕上按下鼠標(biāo)左鍵時(shí)觸發(fā)動作。

(2)?release:放開,當(dāng)在按鈕上按下鼠標(biāo)左鍵,在不移動鼠標(biāo)的情況下,釋放鼠標(biāo)左鍵時(shí)觸發(fā)動作。

(3)?releaseOutside:在按鈕外放開,當(dāng)在按鈕上按下鼠標(biāo)左鍵,接著把鼠標(biāo)光標(biāo)移動到按鈕以外的區(qū)域松開鼠標(biāo)時(shí)觸發(fā)動作。

(4)?rollOver:指向,當(dāng)鼠標(biāo)指針指向按鈕區(qū)域時(shí)觸發(fā)動作。

(5)?rollOut:離開,當(dāng)鼠標(biāo)指針離開按鈕區(qū)域時(shí)觸發(fā)動作。

(6)?dragOver:拖動指向,當(dāng)按下鼠標(biāo)左鍵不放,然后拖動光標(biāo)經(jīng)過按鈕區(qū)域時(shí)觸發(fā)動作。

(7)?dragOut:拖動離開,當(dāng)在按鈕區(qū)域按下鼠標(biāo)左鍵不放,然后拖動光標(biāo)離開按鈕區(qū)域時(shí)觸發(fā)動作。

(8)?keyPress:響應(yīng)鍵盤事件,如keyPress"<Left>“

等,可以響應(yīng)鍵盤上的<left>、<right>、<up>、<down>、<insert>、<delete>、<home>、<end>、<pageup>、<pagedown>、<escape>、<space>、<enter>、<backspace>、<tab>按鍵。

2.?stopAllSounds語句

stopAllSounds語句用于終止所有正在播放的音頻片

段。該語句并不是使作品無法播放聲音,只是終止當(dāng)前正在播放的音頻片段,執(zhí)行該語句后后面被激活的音頻對象仍然能夠正常播放。

16.7賦值語句

賦值語句是Flash中比較靈活的語句,使用該語句配合跳轉(zhuǎn)、條件語句可以實(shí)現(xiàn)非常靈活的交互動畫跳轉(zhuǎn)。

Flash的賦值語句是setvariable。

16.8屬性設(shè)置語句

屬性設(shè)置語句用來設(shè)置某一影片剪輯的屬性,如影片剪輯對象的位置、大小、旋轉(zhuǎn)、傾斜以及透明度等。

Flash的屬性設(shè)置語句是setProperty。

16.9跳轉(zhuǎn)調(diào)用語句

1.?goto語句

當(dāng)執(zhí)行g(shù)oto語句時(shí)動畫就會跳到指定的幀并根據(jù)設(shè)置繼續(xù)執(zhí)行或停止。

goto語句分為兩種類型:gotoAndPlay(指定位置)和gotoAndStop(指定位置)。

2.?call語句

call語句用于調(diào)用指定幀上的動畫腳本。其格式如

下:

call(放置腳本的關(guān)鍵幀)

16.10條件語句

1.?if、elseif和else語句

if語句格式如下:

if(條件1)

動作語句1

elseif(條件2)

動作語句2

else

動作語句3

endif

if語句用于判斷條件是否滿足,若滿足則執(zhí)行其中的動作。若if條件不滿足但滿足elseif的條件,則執(zhí)行elseif中的動作;若均不滿足,則執(zhí)行else語句中的動作。

2.?ifFrameLoaded語句

ifFrameLoaded語句用于偵測某指定的幀是否被載入,若載入則執(zhí)行其后設(shè)定的動作語句。

ifFrameLoaded常用于制作Loading動畫,制作Loading動畫是為了避免觀眾在等待比較大的文件時(shí)出現(xiàn)不耐煩

情緒。

16.11循環(huán)語句

在很多交互式的設(shè)計(jì)中,往往希望在滿足某情況下動作能夠多次執(zhí)行,直到不滿足條件為止,這時(shí)候就可以使用循環(huán)語句來達(dá)到要求了。

1.?dowhile

dowhile語句格式如下:

do{語句}while(條件)

先執(zhí)行語句再判斷條件,若條件滿足則繼續(xù)執(zhí)行語

句,然后再判斷執(zhí)行,直到條件不滿足為止,退出循環(huán)。

2.?while語句

while語句格式如下:

while(條件){語句}

先判斷條件是否滿足,若條件不滿足則退出循環(huán),若條件滿足則執(zhí)行語句,然后再判斷執(zhí)行,直到條件不滿足為止,退出循環(huán)。

3.?for語句

for語句格式如下:

for(初始值;條件;條件參數(shù)變化規(guī)律){語句}

先判斷條件是否滿足,若條件不滿足則退出循環(huán),若條件滿足則執(zhí)行語句,然后執(zhí)行條件參數(shù)變化規(guī)律,再判斷執(zhí)行,直到條件不滿足為止,退出循環(huán)。16.12URL地址鏈接語句

getURL語句用于打開與URL地址對應(yīng)的網(wǎng)站。

URL語句應(yīng)用實(shí)例:創(chuàng)建一按鈕,命名為URL;選中URL按鈕,在動作面板中設(shè)置為

on(press){

getURL(“http://網(wǎng)址,”_self”);

}當(dāng)點(diǎn)擊該按鈕時(shí)就可打開網(wǎng)址對應(yīng)的網(wǎng)站頁面。URL語句的參數(shù)設(shè)置如下:

_self:該參數(shù)使網(wǎng)頁在當(dāng)前窗口中打開。

_blank:該參數(shù)將另開一個(gè)窗口放置打開的網(wǎng)頁。

_parrent:該參數(shù)將在當(dāng)前窗口的上一級瀏覽器窗口中打開網(wǎng)頁。

_top:該參數(shù)將在當(dāng)前窗口的頂級瀏覽器窗口中打開網(wǎng)頁。

16.13應(yīng)用實(shí)例

本實(shí)例制作一個(gè)簡單的電子鐘,具體操作步驟

如下:

(1)新建Flash文檔。

(2)導(dǎo)入一副風(fēng)景圖片到庫中。

(3)新建兩個(gè)圖層,將圖層1命名為“背景”,將圖層2命名為“文本”,將圖層3命名為“動作”(如圖16.2所示),選中背景圖層的第1幀,從庫面板中拖入風(fēng)景圖片,調(diào)整好大小(550px×400px)以及位置(0,0)。圖16.2圖層設(shè)置

(4)在背景圖層的第2幀插入幀做延續(xù),在文本圖層

的第2幀插入幀做延續(xù),在動作圖層的第2幀插入關(guān)鍵幀。

(5)為動作圖層的第1幀設(shè)置動作代碼,如圖16.3

所示。圖16.3設(shè)置動作代碼第1幀動作代碼如下:

time=newDate();

varyy=time.getFullYear()

varmm=time.getMonth()+1

vardd=time.getDate()

vars=time.getSeconds();

varm=time.getMinutes();

varh=time.getHours();

if(h<12){

ampm="AM";

}

el

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論