Flash中常用的動作命令
1.Flash中的常用命令:
1.在當前幀停止播放
在(發(fā)布){
停止();
}
2.從當前幀開始播放
在(發(fā)布){
玩();
}
3.跳轉到第10幀,從第10幀開始播放
在(發(fā)布){
gotoAndPlay(10);
}
4.跳到第20幀,停在這一幀
在(發(fā)布){
轉到并停止(20);
}
5.跳到下一場景繼續(xù)播放
在(發(fā)布){
下一個場景();
玩();
}
6.跳到上一場景繼續(xù)播放
在(發(fā)布){
上一個場景();
播放();
}
7.點擊指定場景開始播放
在(發(fā)布){
gotoAndPlay('場景名稱',1);
}
8.播放窗口全屏顯示
在(發(fā)布){
fscommand('全屏', 真);
}
9.取消播放器窗口全屏
在(發(fā)布){
fscommand('全屏', false);
}
10.播放畫面隨播放器窗口大小變化
在(發(fā)布){
fscommand('allowscale', 真);
}
11.無論播放器窗口有多大,播放畫面都會保持原來的大小。
在(發(fā)布){
fscommand('allowscale', false);
}
12、打開一個網(wǎng)頁,如果“網(wǎng)頁”和“flash動畫”在同一個文件夾:
在(發(fā)布){
getURL('http://ftg.5d6d.com');
}
13、打開一個網(wǎng)頁,如果“網(wǎng)頁”在網(wǎng)絡上的其他站點:
在(發(fā)布){
getURL(http://ftg.5d6d.com);
}
14.跳框(按鍵動作,松開跳轉)
在(發(fā)布){
gotoAndPlay(1);
}
15.玩:
在(釋放){播放();}
16. 停止:
上(釋放){停止();}
17.跳到第N幀開始播放:
在(釋放){gotoAndplay(N);}
18.跳到第N幀停止:
上(釋放){gotoAndstop(N);}
2.Flash中聲音的常用命令:
1.new Sound()//新建一個聲音對象;
2.mysound.attachSound()//加載庫中的聲音
3.mysound.start()//播放聲音;
4.mysound.getVolume()//讀取聲音的音量
5.mysound.setVolume()//設置音量
6.mysound.getPan()//讀取聲音的平衡值
7.mysound.setPan()//設置聲音的平衡值
8.mysound.position//聲音播放的當前位置
9.mysound.duration//聲音的總時長;
FLASH動作腳本代碼合集
1.簡單加載代碼:
方法一、用加載的字節(jié)數(shù)判斷
b=getBytesTotal();// 獲取總的字節(jié)數(shù)a=getBytesLoaded();// 已經下載的字節(jié)數(shù)
onEnterFrame=function(){// 進入幀時 , 進行判斷
if (a == b) {// 如果載入的字節(jié)數(shù)等于總的字節(jié)數(shù)
delete this.onEnterFrame// 刪除進入幀
gotoAndPlay("frame");// 轉入到你要播放的幀
] else {// 否則
a=getBytesLoaded();// 已經下載的字節(jié)數(shù)
percent=int(a/b*100)+"%";// 計算已經下載的百分比
]
}
把上面方法放入第一幀就可以了
方法 2 、使用載入的幀數(shù)判斷_
用 Action 語法地 if frame. is loaded 來實現(xiàn) , 新建一層,這層專門放 Action,
第一幀,
ifFrameLoaded (" 場景 ", frame) {// 假如場景中地禎數(shù)已經載入
goto and play() // 跳至并播放某某禎 ( 自己設定 )
}
第二幀, O*Np@Q
goto and play(" 場景 1", 1)// 跳至并播放第一禎循環(huán)
再加上一個 load 地 MC 循環(huán)播放在這兩幀的中間,就 OK 了。
2 、用 flash 做那種彈出的小窗口
分兩步:
給 flash 中的按鈕加入如下 action:
on (release) { idd{
getURL ("MM_openBrWindow('newweb.htm','','width=600,height=100')");
在 HTML 頁面的 <head>...</head> 之間加入下面的 javascript. 代碼 .
<script. language="javascript">
<!-- ~Y
function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features); ;
}
//-->
</script>
3 、載入 swf 文件的控制
在 flash 中可以使用 loadmovie ()和 loadmovienum ()兩個函數(shù)控制,具體代碼如下:
loadmovie 載入的控制
_root.createEmptyMovieClip ( "aa" , 1 );
with ( aa ) {
_x = 50 ;
_y = 100 ;
_width=200
_height=300
_alpha=50
loadMovie ( "02.swf" );
}
loadMovieNum 的載入控制:
loadMovieNum ( "02.swf" , 1 );
onEnterFrame. = function () {
if ( _level1 ) {
with ( _level1 ) {
_x = 50 ;
_y = 100 ;
}
delete onEnterFrame. ;
}
};
在 flash 2004 中,增加了 MovieClipLoader 類,使用它可以控制播放,下面是一個測試代碼:
var mcl= new MovieClipLoader(); // 定義新的 MovieClipLoader 對象~
var listener = new Object(); // 定義一個新的對象,用來監(jiān)聽 load 進程
listener.onLoadProgress=function(target,loadedBytes,totalBytes ){ //onloadprogress 加載過程中每當將加載的內容寫入磁盤時調用
// 其中 loadedBytes 是已經下載的字節(jié), totalBytes 是正在加在的文件的總字節(jié)數(shù)
x=loadedBytes
y=totalBytes
//trace(x+ " bytes 已經 load 了 ");
//trace(totalBytes + " bytes 需要 load");
d=x*100/y // 計算已經載入的百分比
)
listener.onLoadInit = function(target) // 當執(zhí)行加載的剪輯的第一幀上的動作時調用
{
if(d<100){ // 如果沒有加載完成,不要播放
target.stop();
} else { // 加載完成,可以設置加載的 swf 文件開始播放的幀數(shù)
target.gotoAndPlay(2);
}
target._width=400 // 設置加載的影片的大小及其位置等相關屬性
target._height=350
target._x=25
target._y=50
}
mcl.addListener(listener); // 注冊一個新的監(jiān)聽對象
mcl.loadClip("***.swf",1)// 使用自定義的對象,加載 swf 文件
4 、設為首頁
on (release) {
getURL("void(document.links.style.behavior='url(#default#homepage)');voiddocument.links.setHomePage('http://www.flash8.net/')","_self", "POST");
}
注意要將網(wǎng)頁中的 flash 的 ID 號命名為 "links"
加入收藏夾
on (release) {
getURL("void window.external.AddFavorite('http://www.163.com',' 網(wǎng)頁 ');","_self", "POST");
}
5 、如何隨機設置 MC 顏色?
方法 1 、 MC 實例名為 "mc"
mycolor=new Color("mc")
mycolor.setRGB(random(0xffffff))
方法 2 、 MC 實例名為 "mc"
mycolor=new Color("mc") [
mycolor.setRGB(random(16777215))
方法 3 、 myColor = new Color(mc);
myColorTransform. = new Object();// 用 new Object() 為
//setTrandform() 創(chuàng)建參數(shù)并隨機取值
myra = random(100);
myrb = random(255);
myga = random(100);
mygb = random(255);
myba = random(100);
mybb = random(255);
myaa = random(100);
myab = random(255);
myColorTransform. = {ra:myra, rb:myrb, ga:myga, gb:mygb, ba:myba, bb:mybb, aa:myaa, ab:myab};
myColor.setTransform(myColorTransform);
方法 4 、 mycolor = new Color(mc);
mycolor.setRGB(random(255)<<16|random(255)<<8|random(255));
6 、關于隨機數(shù)的技巧
用來產生 6--20 之間的 5 個不重復的隨機數(shù)
1): 首先產生一個隨機數(shù) , 放在數(shù)組對象中的第一個位置
2): 產生一個新的隨機數(shù)
3): 檢查新產生的隨機數(shù)和所有目前已產生的隨機數(shù)是否相同 , 若是相同則返回 (2), 否則返回 (4)
4): 將新的隨機數(shù)加入數(shù)組對象中下一個數(shù)組元素內
5): 檢查數(shù)組對象個數(shù)是否已達到 5 個 , 若是跳到 (6), 否則返回 (2)
6): 結束
AS 如下 :
data1=newArray(5);
tot=1;
data1=[tot-1]=random(20-6+1)+6;
do{
gen_data=random(20-6+1)+6;
reapeat_data=0;
for(i=0,i<=tot-1;i++){
if(gen_data==data
reapeat_data=1;
break;
}
}
if(reapeat_data==0){
tot++
data[tot-1]=reapeat_data;
}
}while(tot<5);
trace(data1);
7 、如何禁止右鍵菜單、縮放、全屏
在第一楨中輸入下面命令:
全屏-> FS Command ("fullscreen", true)
禁止縮放-> FS Command ("allowscale", False)
禁止菜單-> FS Command ("showmenu", False)
fscommand 的方法還是只能適用于 fp ,在網(wǎng)頁中使用還是必須添加額外的參數(shù)
<PARAM Name="menu" value="false">
或者用最簡單的一句 as ,在 fp 和網(wǎng)頁中均適用:
Stage.showMenu=false;
8 、如何實現(xiàn)雙擊效果?
把下面的代碼放到按鈕上:
on (press) {
time = getTimer()-down_time;
if (time<300) {
trace("ok");
}
down_time = getTimer();
}
這樣的話,如果都用比較麻煩,寫了一個類來判斷
MovieClip.prototype.doubleClick = function() {
this.timer2 = getTimer()/1000;
if ((this.timer2-this.timer)<0.25) {
return true;
} else {
this.timer = getTimer()/1000;
return false;
}
};
繼承了 mc 的類,可以重復使用,當然也可以封裝為 2 。 0 的類
9 、如果要在瀏覽器中實現(xiàn)全屏效果,只需在 html 文件中加入以下代碼即可:
<script>
window.open("*.swf","","fullscreen=1,menubar=no,width=800,height=600")
</script>
其中 *.swf 為要調用的 FLASH 文件,記住要將該文件放在 html 文件的同一路徑下面。要退出全屏狀態(tài)需按 ALT + F4 或退出。
如果在 swf 文件中,添加關閉按鈕,使用下面的代碼:
on(release) {
getURL("opener=null;window.close();");
}
10 、用 AS 怎么把影片倒放
function prev(target) {
target.gotoAndStop(target._totalframes);
target.onEnterFrame. = function() { [
if (this._currentframe>1) {
this.gotoAndStop(this._currentframe-1);
} else {
delete this.onEnterFrame;
}
};
}
prev(_root.mc); // 指定要倒退播放的 MC instance name 就可以了
11 、聲音相關
之前為 MYSOUND 鏈接一個屬性
1 : mysound=new Sound();// (注釋) mysound 是一個變量名, new Sound 是一個構造函數(shù),表示 mysound 是一個 Sound 對象。
以后可以通過 mysound 來調用 Sound 方法 }*HK[
2: mysound.attachSound("name"); 這里的 NAME 就是你之前在標識符里寫的東西了,對應好了就 OK !
3: mysound.setVolume(50); 這個是控制聲音播放時的聲音大小,取值在 0 到 100 ,意義大家都知道吧,不會有人認為 0 是最大聲吧 ~
4:mysound.start(0.01); 這個語句是表示開始播放聲音,()里的參數(shù)表示聲音開始的位置,單位為秒,再來就是循環(huán)幾次 ~ 比如 mysound.start(30 , 2);// 聲音從 30 秒處開始循環(huán) 2 次。
12 、倒計時
首先新建文件以后,在主場景中分別用文字工具建立三個動態(tài)文本框,變量名字分別是: leftmin,leftsec,leftmilli, 也就是分別來顯示計時的分鐘、秒數(shù)和毫秒數(shù)。
然后新建一層,在第一楨寫上如下代碼即可:(已經做了詳細解釋,相信大部分朋友能夠理解這些代碼的意思)
onLoad = function(){// 當場景加載以后執(zhí)行
totalmin = 40;
totalsec = 60;
totalmilli = 100;
// 初始化一些變量,在后面的計算中要用到這些變量
}
nEnterFrame. = function(){// 逐楨執(zhí)行動作"
currentsec = Math.round(getTimer()/1000);
// 求出當前影片已經播放的秒數(shù)(取整)
currentmilli = Math.round(getTimer()/10);
// 求出當前影片已經播放的毫秒數(shù)(取整)
leftsec = totalsec- currentsec;~
// 剩余的秒數(shù)等于總的秒數(shù)減去已經播放的秒數(shù)
leftmin = totalmin; ^
// 開始分鐘數(shù)等于總的分鐘數(shù),開始是不變的
leftmilli = totalmilli - currentmilli;
// 剩余的毫秒數(shù)等于總的毫秒數(shù)減去已經播放的毫秒數(shù)
if(leftsec<10){leftsec = "0"+leftsec}
if(leftmin<10){leftmin = "0"+leftmin}
if(leftmilli<10){leftmilli = "0"+leftmilli}
// 以上三句是當分鐘數(shù)、秒數(shù)、毫秒數(shù)小于 10 的時候,前面加上一個 “0” 。
if(leftmilli<=1){totalmilli+=100;} );
// 當計時剩下的毫秒小于 1 的時候,總秒數(shù)再加 100 ,以便下一次重新計時(這里注意得到的影片播放的毫秒數(shù)是一直增加的)
if(leftsec == 0){// 當剩余的秒數(shù)等于 0 的時候
totalsec+=60;// 類似上面的解釋,總秒數(shù)加 60
totalmin-=1;// 這時候相當于過了 60 秒,所以分鐘數(shù)要減 1
if(leftmin ==0){// 當分鐘數(shù)等于 0 的時候,計時結束
leftsec = "00"; ,
leftmin = "00";
leftmilli = "00";
// 將三個計時框都附值為 0
delete onEnterFrame;// 刪除這個逐楨動作,以節(jié)省資源
};
}
}
13 、鍵盤控制上下左右
怎樣用鍵盤中的上下左右控制動畫!
onClipEvent (load) {
speed = 5;// 當 MC 載入時,設置速度為 5 ,也就是說每按一下方向鍵,就移動 5 象素
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
this._x -= speed;// 當 ← 被按下時,自身的 X 位置不斷減 speed , X 軸坐標不斷減小,也就是不斷向左移動
}
if (Key.isDown(Key.RIGHT)) {
this._x += speed;// 當 → 被按下時,自身 X 位置不斷加 speed , X 軸坐標不斷增加,也就是不斷向右移動
}
if (Key.isDown(Key.UP)) {
this._y -= speed;// 當 ↑ 被按下時,自身的 Y 位置不斷減 speed , Y 軸坐標不斷減小,也就是不斷向上移動
}
if (Key.isDown(Key.DOWN)) {
this._y += speed;// 當 ↓ 被按下時,自身的 Y 位置不斷加 speed , Y 軸坐標不斷增加,也就是不斷向下移動
}
}
onEnterFrame. = function () {
if (Key.isDown(Key.LEFT)) {
mc._x -= 20;
}
if (Key.isDown(Key.RIGHT)) {
mc._x += 20;
}
if (Key.isDown(Key.UP)) {
mc._y -= 20;
}
if (Key.isDown(Key.DOWN)) {
mc._y += 20;
}
if (mc._x<0) {
mc._x = 0;
}
if (mc._x>550-mc._width) {
mc._x = 550-mc._width;
}
if (mc._y<0) {
mc._y = 0;
}
if (mc._y>400-mc._height) {
mc._y = 400-mc._height;
}
}
14 、隨機調用外部圖片
用 9 個圖片為例子,這個也可以使用 loadmovie 調用
num=Math.round(9*Math.random()+1)
// 設置隨即數(shù)字( 1-9 )
_root.createEmptyMovieClip("pic", 1);
// 創(chuàng)建一個空的 PIC MC 用來裝載外面載入的圖片
_root.pic._x = 200;
_root.pic._y = 200;
// 簡單設置一下 MC 的位置
_root.pic.loadMovie(num+".jpg",1);
// 隨即載入外面的圖片
15 、暫停
可以把要暫停的地方 , 幀數(shù)放長啊
或者在當前幀寫
stop();
function pause(){
clearInterval(pauseInterval);
play();
pauseInerval=setInterval(pause,1000); //1000 是 1 秒
16 、怎樣改變某一影片剪輯的播放速度
function go(obj) {
with (obj) {
nextFrame();
if (_currentframe. == _totalframes) {
gotoAndStop(1);
}
}
)
go(mc);
setInterval(go, 100, mc);
17 、怎樣調用 .chm 文件
getURL(mk:@MSITStore:F:...xxx.chm::/index.htm)
18 、隨機生成一個有 30 個數(shù)字的數(shù)組,這 30 個數(shù)字隨機在 1~500 之間取,且不能重復,而且要亂序的。
tmp = new Array();
k = new Array();
for (i=0; i<=499; i++) {
tmp = i+1;
}
for (i=0; i<=29; i++) {
k = tmp.splice(random(tmp.length-1), 1);
}
trace(k);
Flash按鈕動作代碼
________________________________________
Flash按鈕動作代碼
1、轉下一幀并繼續(xù)播放
on (release)
{
play();
}
2、轉第三幀并播放
on (release)
{
gotoAndPlay(03);
stopAllSounds();
}
3、全屏播放
fscommand("fullscreen", "true");
4、退出
on (release)
{
if (substring(_root._url, 8, 1) == "/")
{
fscommand("quit");
}
else
{
getURL("javascript:window.close()");
} // end if
}
5、返回第一幀
on (release)
{
gotoAndPlay(01);
stopAllSounds();
}
FLASH腳本代碼大全
- Go to 跳轉到指定的幀
- Play 播放
- Stop 停止
- Toggle High Quality 在高畫質和低畫質間切換
- Stop All Sounds 停止所有聲音的播放
- Get URL 跳轉至某個超聯(lián)結
- FSCommand 發(fā)送FSCommand命令
- Load Movie 裝載影片
- Unload Movie 卸載影片
- Tell Target 告知目標
- If Frame Is Loaded ..判斷幀是否被完全載入
- On Mouse Event 鼠標事件
。其他Actions。包括:
- break 跳出循環(huán)
- call 調用指定幀(一般喊有某個特定函數(shù))
- comment 注釋
- continue 繼續(xù)循環(huán)
- delete 刪除一個對象(Object)中的變量
- do while do while循環(huán)
- duplicateMovieClip 復制MC
- else 否則(與if聯(lián)用)
- else if 否則如果(與if聯(lián)用)
- evaluate 調用自定義函數(shù)(Function)
- for for循環(huán)
- for .. in 依次取得對象(Object)中的各個屬性或者某個數(shù)組中的所有元素
- FSCommand 發(fā)送FSCommand命令
- function 聲明自定義函數(shù)
- getURL 跳轉至某個超聯(lián)結
- goto 跳轉到指定的幀
- if 如果
- ifFrameLoaded ..幀是否完全被載入
- include 讀入外部的ActionScript程序文件(.as)
- loadMovie 裝載MC
- loadVariables 轉載外部文件中的數(shù)據(jù),這些外部文件可以是文本文件,或者是由ASP/CGI等腳本返回的文本值
- on 鼠標事件的觸發(fā)條件
- onClipEvent MC的事件觸發(fā)程序
- play 播放
- print 輸出到打印機
- removeMovieClip 刪除MC
- return 在函數(shù)(function)中返回一個值
- set variable 設定變量值
- setProperty 設定屬性
- startDrag 開始拖動
- stop 停止
- stopAllSounds 停止所有聲音的播放
- stopDrag 停止拖動
- swapDepths 交換兩個MC的深度
- tellTarget 指定Action命令生效的目標
- toggleHighQuality 在高畫質和低畫質間切換
- trace 跟蹤調試
- unloadMovie 卸載MC
- var 聲明局部變量
- while 當..成立時..
- with 對..對象(Object)做..
。操作符( Operators)
- ! 邏輯非操作
- != 不等于
- "" 字符串
- % 取余數(shù)
- && 邏輯與操作
- () 括號
- * 乘號
- + 加號
- ++ 變量自加一
- - 減號
- -- 變量自減一
- / 除號
- < 小于
- <= 小于等于
- <> 不等于
- == 相等
- > 大于
- >= 大于等于
- and 邏輯與
- not 邏輯非
- or 邏輯或
- typeof 返回變量類型
- void 實體,無返回
- | | 邏輯或操作
+ Bitwise Operators 位操作符
- & 位與操作
- << 位左移
- >> 位右移
- >>> 位右移(無符號)
- ^ 位異或操作
- | 位或操作
- ~ 補位操作
+ Compound Assign Operators 復合操作符
- %= A%=B 等效于 A=A%B
- &= A&=B 等效于 A=A&B
- *= A*=B 等效于 A=A*B
- += A+=B 等效于 A=A+B
- -= A-=B 等效于 A=A-B
- /= A/=B 等效于 A=A/B
- <<= A<<=B 等效于 A=A<<B
- >>= A>>=B 等效于 A=A>>B
- >>>= A>>>=B 等效于 A=A>>>B
- ^= A^=B 等效于 A=A^B
- |= A|=B 等效于 A=A|B
+ String Operators 字符串操作符(注:實質上是ASCII的比較)
- add 連接兩個字符串
- eq A eq B 字符串A值與字符串值B相等
- ge A ge B 字符串A值大于等于字符串B值
- gt A gt B 字符串A值大于字符串B值
- le A le B 字符串A值小于等于字符串B值
- lt A lt B 字符串A值小于字符串B值
- ne A ne B 字符串A值不等于字符串B值
+ Functions 函數(shù)
- Boolean 取表達式的布爾值(True 或 False)
- escape 除去URL串中的非法字符,將其參數(shù)按照URL編碼的格式轉化為字符串(String)
- eval 訪問并計算表達式(expression)的值,并以字符串(String)的形式返回該值
- false 布爾非值(0)
- getProperty 獲取屬性
- getTimer 獲取從電影開始播放到現(xiàn)在的總播放時間(毫秒數(shù))
- getVersion 獲取瀏覽器的FLASHPlayer的版本號
- globalToLocal 場景(Scene)中的坐標轉換成MC中的坐標
- hitTest 測試一個點或者MC是否同另一個交叉(即沖突檢測)
- int 把十進制數(shù)值強制轉換成整數(shù)
- isFinite 測試數(shù)值是否為有限數(shù)
- isNaN 測試是否為非數(shù)值
- keycode 返回鍵盤按下鍵的鍵盤值(ASCII值)
- localToGlobal MC中的坐標轉換成場景(Scene)中的坐標
- maxscroll 文本框的最大行度
- newline 換行符
- Number 將參數(shù)轉換成數(shù)值其返回值有以下四種情況:
如果 x 為一數(shù)字,則返回值即為該數(shù)字;如果 x 為一布爾數(shù),則返回0或1;如果 x 為一字符串,則函數(shù)將x解釋為一個指數(shù)形式的十進制數(shù);如果x未定義,則返回0。
- parseFloat 將字符串轉換成浮點數(shù)
- parseInt 將字符串轉換成整數(shù)
- random 產生0到指定數(shù)間的隨機數(shù)
- scroll 文本框中的起始滾動行
- String 將參數(shù)轉換成字符串
- targetPath 返回指定實例MC的路徑字符串
- true 布爾是值(1)
- unescape 保留字符串中的%XX格式的十六進制字符
+ String Functions 字符串函數(shù)
- chr 將ASCII碼轉換成相應字符
- length 返回字符串的長度
- mbchr 將ASCII/S-JIS編碼轉換成相應的多字節(jié)字符
- mblength 返回多字節(jié)字符串的長度
- mbord 將多字節(jié)字符轉換成相應的ASCII/S-JIS編碼
- mbsubstring 截取多字節(jié)字符串中的字串
- ord 將字符轉換成ASCII碼
- substring 截取字符串中的子串
+ Properties 屬性
- _alpha Alpha值(透明度值)
- _currentframe 在MC中的當前幀數(shù)
- _droptarget 當使用Start drag拖動一個MC時,實時地返回該MC的絕對路徑
- _focusrect 高亮按鈕或者某個當前區(qū)域的顯示與否(True顯示/Flase不顯示)
- _framesloaded 已載入的影幀數(shù)
- _height MC的高度
- _highquality 畫質的高低(True高畫質/False低畫質)
- _name MC的實例名
- _quality 當前畫質(字符串值) LOW,MEDIUM,HIGH,BEST
- _rotation MC旋轉的角度(單位:度)
- _soundbuftime 聲音的緩沖區(qū)大小(默認值5,單位:秒)
- _target MC的路徑
- _totalframes 總幀數(shù)
- _url 電影被調用的URL地址
- _visible 是否可視(True可視/False不可視)
- _width MC的寬度
- _x MC的x坐標
- _xmouse 鼠標的x坐標
- _xscale MC的X軸向縮放度
- _y MC的y坐標
- _ymouse 鼠標的y坐標
- _yscale MC的y軸向縮放度
+ Objects 對象
+ Array 數(shù)組
- concat 合并多個數(shù)組
- join 將一個數(shù)組中的元素轉化成字符串,并通過特定的分割符進行聯(lián)結,并返回結果字符串
- length 返回數(shù)組長度
- new Array 新建數(shù)組對象
- pop 出棧 (FILO 先入后出)
- push 入棧 (入隊列)
- reverse 反相(顛倒數(shù)組,及第一個元素和最后一個元素互換……)
- shift 出隊列 (FIFO 先入先出)
- slice 截取數(shù)組中的子串生成新的數(shù)組
- sort 數(shù)組元素的排序
- splice 從數(shù)組中指定元素起刪除指定個數(shù)的元素或者刪除指定元素
- unshift 從數(shù)組頭部插入一個元素
+ Boolean 布爾對象
- new Boolean 新建布爾型對象
- toString 將布爾型對象的值轉換成字符串值
- valueOf 獲取布爾型對象的值(返回值為布爾型)
+ Color 顏色對象
- getRGB 獲取顏色值的RGB分量(返回值0xRRGGBB十六進制)
- getTransform 獲取顏色值的轉換量(返回值 cxform 型) [不太清楚]
- new Color 新建一顏色對象
- setRGB 設置顏色值的RGB分量(參數(shù)為0xRRGGBB十六進制)
- setTransform 設置顏色值的轉換量(參數(shù)為 cxform 型) [不太清楚]
+ Date 時間和日期對象
- getDate 獲取當前日期(本月的幾號)
- getDay 獲取今天是星期幾(0-Sunday,1-Monday...)
- getFullYear 獲取當前年份(四位數(shù)字)
- getHours 獲取當前小時數(shù)(24小時制,0-23)
- getMilliseconds 獲取當前毫秒數(shù)
- getMinutes 獲取當前分鐘數(shù)
- getMonth 獲取當前月份(注意從0開始:0-Jan,1-Feb...)
- getSeconds 獲取當前秒數(shù)
- getTime 獲取UTC格式的從1970.1.1 0:00以來的秒數(shù)
- getTimezoneOffset 獲取當前時間和UTC格式的偏移值(以分鐘為單位)
- getUTCDate 獲取UTC格式的當前日期(本月的幾號)
- getUTCDay 獲取UTC格式的今天是星期幾(0-Sunday,1-Monday...)
- getUTCFullYear 獲取UTC格式的當前年份(四位數(shù)字)
- getUTCHours 獲取UTC格式的當前小時數(shù)(24小時制,0-23)
- getUTCMilliseconds 獲取UTC格式的當前毫秒數(shù)
- getUTCMinutes 獲取UTC格式的當前分鐘數(shù)
- getUTCMonth 獲取UTC格式的當前月份(注意從0開始:0-Jan,1-Feb...)
- getUTCSeconds 獲取UTC格式的當前秒數(shù)
- getYear 獲取當前縮寫年份(當前年份減去1900)
- new Date 新建日期時間對象
- setDate 設置當前日期(本月的幾號)
- setFullYear 設置當前年份(四位數(shù)字)
- setHours 設置當前小時數(shù)(24小時制,0-23)
- setMilliseconds 設置當前毫秒數(shù)
- setMinutes 設置當前分鐘數(shù)
- setMonth 設置當前月份(注意從0開始:0-Jan,1-Feb...)
- setSeconds 設置當前秒數(shù)
- setTime 設置UTC格式的從1970.1.1 0:00以來的秒數(shù)
- setUTCDate 設置UTC格式的當前日期(本月的幾號)
- setUTCFullYear 設置UTC格式的當前年份(四位數(shù)字)
- setUTCHours 設置UTC格式的當前小時數(shù)(24小時制,0-23)
- setUTCMilliseconds 設置UTC格式的當前毫秒數(shù)
- setUTCMinutes 設置UTC格式的當前分鐘數(shù)
- setUTCMonth 設置UTC格式的當前月份(注意從0開始:0-Jan,1-Feb...)
- setUTCSeconds 設置UTC格式的當前秒數(shù)
- setYear 設置當前縮寫年份(當前年份減去1900)
- toString 將日期時間值轉換成"日期/時間"形式的字符串值
- UTC 返回指定的UTC格式日期時間的固定時間值
+ Key 鍵盤對象
- BACKSPACE Backspace(<-)鍵
- CAPSLOCK CapsLock鍵
- CONTROL Ctrl鍵
- DELETEKEY Delete(Del)鍵
- DOWN 方向下鍵
- END End鍵
- ENTER Enter(回車)鍵
- ESCAPE Esc鍵
- getAscii 獲取最后一個按下或松開的鍵的對應字符的Ascii碼
- getCode 獲取最后一個被按下的鍵的鍵盤掃描碼
- HOME Home鍵
- INSERT Insert(Ins)鍵
- isDown 當指定鍵被按下時返回True值
- isToggled 當Caps lock或者Num Lock鍵被鎖定時返回真(True)
- LEFT 方向左鍵
- PGDN PageDown(PGDN)鍵
- PGUP PageUp(PGUP)鍵
- RIGHT 方向右鍵
- SHIFT Shift鍵
- SPACE 空格鍵
- TAB Tab鍵
- UP 方向上鍵
+ Math 數(shù)學函數(shù)對象
- abs abs(n) 取n的絕對值
- acos acos(n) n的反余弦(返回值單位:弧度)
- asin asin(n) n的反正弦(返回值單位:弧度)
- atan atan(n) n的反正切(返回值單位:弧度)
- atan2 atan2(x,y) 計算x/y的反正切
- ceil ceil(n) 取靠近n的上限的整數(shù)(向上取整)
- cos cos(n) 取n的余弦(n的單位:弧度)
- E Euler(歐拉)指數(shù)(約為2.718)
- exp 指數(shù)
- floor floor(n) 取靠近n的下限的整數(shù)(向下取整)
- LN10 ln10(約等于2.302)
- LN2 ln2(約等于0.693)
- log 取自然對數(shù)(e為底)
- LOG10E 10為底取E的對數(shù)(約等于0.434)
- LOG2E 2為底取E的對數(shù)(約等于1.443)
- max 返回兩參數(shù)中的最大值
- min 返回兩參數(shù)中的最小值
- PI 圓周率(約等于3.14159)
- pow pow(x,y) x的y次方
- random 產生0-1間的隨機數(shù)
- round 四舍五入取整
- sin sin(n) 取n的正弦(n的單位:弧度)
- sqrt 開根號
- SQRT1_2 0.5開根號(約等于0.707)
- SQRT2 2開根號(約等于1.414)
- tan tan(n) 取n的正切(n的單位:弧度)
+ MovieClip 影片夾子對象
- attachMovie 產生一個庫中MC的實體并將它綁定到某個電影上
- dupicateMovieClip 復制當前MC產生新的MC
- getURL 使瀏覽器瀏覽指定頁面
- gotoAndPlay 跳轉到指定幀并播放
- gotoAndStop 跳轉到指定幀并停止播放
- loadMovie 引入一個外部電影到指定層
- loadVariables 引入外部文件中的變量值
- nextFrame 下一幀
- play 播放
- prevFrame 前一幀
- removeMovieClip 刪除用duplicateMovieClip創(chuàng)建的MC
- startDrag 開始拖動MC
- stop 停止MC的播放
- stopDrag 停止拖動MC
- unloadMovie 卸載由loadMovie引入的Movie
+ Mouse 鼠標對象
- hide 隱藏鼠標指針
- show 顯示鼠標指針
+ Number 數(shù)值對象
- MAX_value FLASH5 所允許的最大數(shù)值1.79769313486231 e 308
- MIN_value FLASH5 所允許的最小數(shù)值5 e -324
- NaN 是否為非數(shù)值(Not a Number)
- NEGATIVE_INFINITY 是否為負數(shù)
- new Number 新建數(shù)值對象
- POSITIVE_INFINITY 是否為正數(shù)
- toString 將數(shù)值轉換成字符串
+ Object 對象
- new Object 新建對象
- toString 轉換對象為字符串
- valueOf 返回對象的值
+ Selection 選擇區(qū)對象
- getBeginIndex 獲取可編輯文本區(qū)的起始位置,-1表示無可編輯文本區(qū)
- getCaretIndex 獲取當前的編輯位置,-1表示沒有可編輯文本區(qū)
- getEndIndex 獲取可編輯文本區(qū)的結束位置,-1表示無可編輯文本區(qū)
- getFocus 獲取當前的激活文本區(qū)的文本變量名
- setFocus 設置當前的激活文本區(qū)
- setSelection 設置可編輯文本的起始位置和終止位置
+ Sound 聲音對象
- attachSound 綁定庫中的一個聲音
- getPan 獲取聲音的混音值 [不太清楚]
- getTransform 獲取當前聲音的變換量(返回值類型:sxform) [不太清楚]
- getVolume 獲取當前聲音的音量(百分比)
- new Sound 新建聲音對象
- setPan 設置聲音的混音值 [不太清楚]
- setTransform 設置當前聲音的變換量(參數(shù)類型:sxform) [不太清楚]
- setVloume 設置當前聲音的音量(百分比)
- start 開始播放當前聲音
- stop 停止播放當前聲音
+ String 字符串對象
- charAt 在指定的索引表中返回一個字符
- charCodeAt 在指定的索引表中返回一個字符的代碼
- concat 聯(lián)結合并多個字符串
- fromCharCode 從字符代碼組構造出一個新的字符串
- indexOf 在字符串中尋找子串,返回子串起始位置或-1(-1表示未找到)
- lastIndexOf 在字符串中尋找子串,返回子串終止位置或-1(-1表示未找到)
- length 返回字符串的長度
- new String 新建字符串對象
- slice 返回字符串中指定截取的子串
- split 根據(jù)限定符將字符串轉換成一個數(shù)組
- substr substr( start, length ) 返回從start開始,共length長的子串
- substring substring( indexA, indexB ) 返回indexA..indexB之間的子串
- toLowerCase 將字符串中的大寫字符全部轉換成小寫
- toUpperCase 將字符串中的小寫字符全部轉換成大寫
+ XML 可擴充性標記語言對象
- appendChild 添加一個子結點到指定的XML元素
- attributes XML元素的屬性數(shù)組
- childNodes 一個XML元素的子結點數(shù)組
- cloneNode 克隆(復制)當前結點
- createElement 新建一個新的XML元素
- createTextNode 新建一個新的XML文本結點
- firstChild 返回當前XML結點的第一個子結點
- hasChildNodes 當前XML結點是否有子結點(返回true有子結點/flash則無)
- insertBefore 在一個指定的XML元素的子結點前插入一個新的子結點
- lastChild 返回當前XML結點的最后一個子結點
- load 從指定的URL把XML元素引入FLASH中
- loaded 當XML元素引入或是發(fā)送同時引入FLASH中后,返回true值
- new XML 新建一個XML對象
- nextSibling 當前XML結點的下一個結點
- nodeName 返回當前XML結點的名字
- nodeType 返回當前XML結點的類型(1-元素,3-文本)
- nodevalue 返回當前XML結點的值(text型返回文本)
- onLoad 當引入或發(fā)送同時引入時觸發(fā)事件
- parentNode 返回當前XML結點的父結點
- parseXML 將XML字符串轉換成XML對象
- previousSibling 當前XML結點的前一個結點
- removeNode 從XML文本中刪除結點
- send 從FLASH中把一個XML元素發(fā)送到指定的URL地址
- sendAndLoad 從FLASH中把一個XML元素發(fā)送到指定的URL地址同時引入XML結果
- toString 把XML對象轉換為XML字符串表達
+ XMLSocket XML套接口
- close 關閉一個XML套接口
- connect 連接一個XML套接口,指定URL,并定義其端口號
- new XMLSocket 建立一個新的XML套接口
- onClose 關閉XML套接口時觸發(fā)事件
- onConnect 連接XML套接口時觸發(fā)事件
- onXML 從服務器上獲取XML時觸發(fā)事件
- send 發(fā)送XML給服務器
FLASH動作腳本代碼集錦
1 、簡單 loading 代碼:
方法 1 、使用載入字節(jié)數(shù)判斷
b=getBytesTotal(); 獲取總的字節(jié)數(shù)
a=getBytesLoaded(); 已經下載的字節(jié)數(shù)
onEnterFrame=function(){ 進入幀時 , 進行判斷
if (a == b) { 如果載入的字節(jié)數(shù)等于總的字節(jié)數(shù)
delete this.onEnterFrame 刪除進入幀
gotoAndPlay(frame); 轉入到你要播放的幀
] else { 否則
a=getBytesLoaded(); 已經下載的字節(jié)數(shù)
percent=int(ab100)+%; 計算已經下載的百分比
]
}
把上面方法放入第一幀就可以了
方法 2 、使用載入的幀數(shù)判斷_
用 Action 語法地 if frame is loaded 來實現(xiàn) , 新建一層,這層專門放 Action,
第一幀,
ifFrameLoaded ( 場景 , frame) { 假如場景中地禎數(shù)已經載入
goto and play() 跳至并播放某某禎 ( 自己設定 )
}
第二幀, ONp@Q
goto and play( 場景 1, 1) 跳至并播放第一禎循環(huán)
再加上一個 load 地 MC 循環(huán)播放在這兩幀的中間,就 OK 了。
2 、用 flash 做那種彈出的小窗口
分兩步:
給 flash 中的按鈕加入如下 action
on (release) { idd{
getURL (MM_openBrWindow('newweb.htm','','width=600,height=100'));
在 HTML 頁面的 head...head 之間加入下面的 javascrīpt 代碼 .
scrīpt language=javascrīpt
!-- ~Y
function MM_openBrWindow(theURL,winName,features) { v2.0
window.open(theURL,winName,features); ;
}
--
scrīpt
3 、載入 swf 文件的控制
在 flash 中可以使用 loadmovie ()和 loadmovienum ()兩個函數(shù)控制,具體代碼如下:
loadmovie 載入的控制
_root.createEmptyMovieClip ( aa , 1 );
with ( aa ) {
_x = 50 ;
_y = 100 ;
_width=200
_height=300
_alpha=50
loadMovie ( 02.swf );
}
loadMovieNum 的載入控制:
loadMovieNum ( 02.swf , 1 );
onEnterFrame = function () {
if ( _level1 ) {
with ( _level1 ) {
_x = 50 ;
_y = 100 ;
}
delete onEnterFrame ;
}
};
在 flash 2004 中,增加了 MovieClipLoader 類,使用它可以控制播放,下面是一個測試代碼:
var mcl= new MovieClipLoader(); 定義新的 MovieClipLoader 對象~
var listener = new Object(); 定義一個新的對象,用來監(jiān)聽 load 進程
listener.onLoadProgress=function(target,loadedBytes,totalBytes ){ onloadprogress 加載
過程中每當將加載的內容寫入磁盤時調用
其中 loadedBytes 是已經下載的字節(jié), totalBytes 是正在加在的文件的總字節(jié)數(shù)
x=loadedBytes
y=totalBytes
trace(x+ bytes 已經 load 了 );
trace(totalBytes + bytes 需要 load);
d=x100y 計算已經載入的百分比
)
listener.onLoadInit = function(target) 當執(zhí)行加載的剪輯的第一幀上的動作時調用
{
if(d100){ 如果沒有加載完成,不要播放
target.stop();
} else { 加載完成,可以設置加載的 swf 文件開始播放的幀數(shù)
target.gotoAndPlay(2);
}
target._width=400 設置加載的影片的大小及其位置等相關屬性
target._height=350
target._x=25
target._y=50
}
mcl.addListener(listener); 注冊一個新的監(jiān)聽對象
mcl.loadClip(.swf,1) 使用自定義的對象,加載 swf 文件
4 、設為首頁
on (release) {
getURL(void(document.links.style.behavior='url
(#default#homepage)');voiddocument.links.setHomePage(' httpwww.flash8.net'),_self,
POST);
}
注意要將網(wǎng)頁中的 flash 的 ID 號命名為 links
加入收藏夾
on (release) {
getURL(void window.external.AddFavorite(' httpwww.163.com',' 網(wǎng)頁 ');,_self, POST);
}
5 、如何隨機設置 MC 顏色?
方法 1 、 MC 實例名為 mc
mycolor=new Color(mc)
mycolor.setRGB(random(0xffffff))
方法 2 、 MC 實例名為 mc
mycolor=new Color(mc) [
mycolor.setRGB(random(16777215))
方法 3 、 myColor = new Color(mc);
myColorTransform = new Object(); 用 new Object() 為
setTrandform() 創(chuàng)建參數(shù)并隨機取值
myra = random(100);
myrb = random(255);
myga = random(100);
mygb = random(255);
myba = random(100);
mybb = random(255);
myaa = random(100);
myab = random(255);
myColorTransform = {ramyra, rbmyrb, gamyga, gbmygb, bamyba, bbmybb, aamyaa,
abmyab};
myColor.setTransform(myColorTransform);
方法 4 、 mycolor = new Color(mc);
mycolor.setRGB(random(255)16random(255)8random(255));
6 、關于隨機數(shù)的技巧
用來產生 6--20 之間的 5 個不重復的隨機數(shù)
1) 首先產生一個隨機數(shù) , 放在數(shù)組對象中的第一個位置
2) 產生一個新的隨機數(shù)
3) 檢查新產生的隨機數(shù)和所有目前已產生的隨機數(shù)是否相同 , 若是相同則返回 (2), 否則返回 (4)
4) 將新的隨機數(shù)加入數(shù)組對象中下一個數(shù)組元素內
5) 檢查數(shù)組對象個數(shù)是否已達到 5 個 , 若是跳到 (6), 否則返回 (2)
6) 結束
AS 如下
data1=newArray(5);
tot=1;
data1=[tot-1]=random(20-6+1)+6;
do{
gen_data=random(20-6+1)+6;
reapeat_data=0;
for(i=0,i=tot-1;i++){
if(gen_data==data
reapeat_data=1;
break;
}
}
if(reapeat_data==0){
tot++
data[tot-1]=reapeat_data;
}
}while(tot5);
trace(data1);
7 、如何禁止右鍵菜單、縮放、全屏
在第一楨中輸入下面命令:
全屏-> FS Command (fullscreen, true)
禁止縮放-> FS Command (allowscale, False)
禁止菜單-> FS Command (showmenu, False)
fscommand 的方法還是只能適用于 fp ,在網(wǎng)頁中使用還是必須添加額外的參數(shù)
PARAM Name=menu value=false
或者用最簡單的一句 as ,在 fp 和網(wǎng)頁中均適用:
Stage.showMenu=false;
8 、如何實現(xiàn)雙擊效果?
把下面的代碼放到按鈕上:
on (press) {
time = getTimer()-down_time;
if (time300) {
trace(ok);
}
down_time = getTimer();
}
這樣的話,如果都用比較麻煩,寫了一個類來判斷
MovieClip.prototype.doubleClick = function() {
this.timer2 = getTimer()1000;
if ((this.timer2-this.timer)0.25) {
return true;
} else {
this.timer = getTimer()1000;
return false;
}
};
繼承了 mc 的類,可以重復使用,當然也可以封裝為 2 。 0 的類
9 、如果要在瀏覽器中實現(xiàn)全屏效果,只需在 html 文件中加入以下代碼即可:
scrīpt
window.open(.swf,,fullscreen=1,menubar=no,width=800,height=600)
scrīpt
其中 .swf 為要調用的 FLASH 文件,記住要將該文件放在 html 文件的同一路徑下面。要退出全屏狀
態(tài)需按 ALT + F4 或退出。
如果在 swf 文件中,添加關閉按鈕,使用下面的代碼:
on(release) {
getURL(opener=null;window.close(););
}
10 、用 AS 怎么把影片倒放
function prev(target) {
target.gotoAndStop(target._totalframes);
target.onEnterFrame = function() { [
if (this._currentframe1) {
this.gotoAndStop(this._currentframe-1);
} else {
delete this.onEnterFrame;
}
};
}
prev(_root.mc); 指定要倒退播放的 MC instance name 就可以了
11 、聲音相關
之前為 MYSOUND 鏈接一個屬性
1 : mysound=new Sound(); (注釋) mysound 是一個變量名, new Sound 是一個構造函數(shù),表
示 mysound 是一個 Sound 對象。
以后可以通過 mysound 來調用 Sound 方法 }HK[
2: mysound.attachSound(name); 這里的 NAME 就是你之前在標識符里寫的東西了,對應好了就 OK
!
3: mysound.setVolume(50); 這個是控制聲音播放時的聲音大小,取值在 0 到 100 ,意義大家都
知道吧,不會有人認為 0 是最大聲吧 ~
4:mysound.start(0.01); 這個語句是表示開始播放聲音,()里的參數(shù)表示聲音開始的位置,單位
為秒,再來就是循環(huán)幾次 ~ 比如 mysound.start(30 , 2); 聲音從 30 秒處開始循環(huán) 2 次。
12 、倒計時
首先新建文件以后,在主場景中分別用文字工具建立三個動態(tài)文本框,變量名字分別是:
leftmin,leftsec,leftmilli, 也就是分別來顯示計時的分鐘、秒數(shù)和毫秒數(shù)。
然后新建一層,在第一楨寫上如下代碼即可:(已經做了詳細解釋,相信大部分朋友能夠理解這些代碼
的意思)
onLoad = function(){ 當場景加載以后執(zhí)行
totalmin = 40;
totalsec = 60;
totalmilli = 100;
初始化一些變量,在后面的計算中要用到這些變量
}
ōnEnterFrame = function(){ 逐楨執(zhí)行動作
currentsec = Math.round(getTimer()1000);
求出當前影片已經播放的秒數(shù)(取整)
currentmilli = Math.round(getTimer()10);
求出當前影片已經播放的毫秒數(shù)(取整)
leftsec = totalsec- currentsec;~
剩余的秒數(shù)等于總的秒數(shù)減去已經播放的秒數(shù)
leftmin = totalmin; ^
開始分鐘數(shù)等于總的分鐘數(shù),開始是不變的
leftmilli = totalmilli - currentmilli;
剩余的毫秒數(shù)等于總的毫秒數(shù)減去已經播放的毫秒數(shù)
if(leftsec10){leftsec = 0+leftsec}
if(leftmin10){leftmin = 0+leftmin}
if(leftmilli10){leftmilli = 0+leftmilli}
以上三句是當分鐘數(shù)、秒數(shù)、毫秒數(shù)小于 10 的時候,前面加上一個 “0” 。
if(leftmilli=1){totalmilli+=100;} );
當計時剩下的毫秒小于 1 的時候,總秒數(shù)再加 100 ,以便下一次重新計時(
本文發(fā)布于北京網(wǎng)站建設公司推來客http://www.tlkjt.com/
我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復、物聯(lián)網(wǎng)開發(fā)、各類API接口對接開發(fā)等。十余年開發(fā)經驗,每一個項目承諾做到滿意為止,多一次對比,一定讓您多一份收獲!