网站建设
移动互联网
品牌设计
创新应用
新闻动态
网站百科

flash常用动作命令大全

时间:2012-05-31 来源:尚品中国 类型:网站百科
字号:   

Flash常用的动作命令
一.Flash中的常用命令:
1、在当前帧停止播放

on(release){
  stop();
}

2、从当前帧开始播放

on(release){
  play();
}

3、跳到第 10 帧,并且从第 10 帧开始播放

on(release){
  gotoAndPlay(10);
}

4、跳到第 20 帧,并且停止在该帧

on(release){
  gotoAndStop(20);
}

5、跳到下一个场景,并且继续播放

on(release){
  nextScene();
  play();
}

6、跳到上一个场景,并且继续播放

on(release){
  prevScene();
  paly();
}

7、条到指定的某个场景,并且开始播放

on(release){
  gotoAndPlay("场景名",1);
}


8、播放器窗口全屏显示

on(release){
  fscommand("fullscreen", true);
}

9、取消播放器窗口的全屏

on(release){
  fscommand("fullscreen", false);
}

10、播放的画面,随播放器窗口大小的,改变而改变

on(release){
  fscommand("allowscale", true);
}

11、播放的画面,不论播放器窗口有多大,都保持原尺寸不变

on(release){
  fscommand("allowscale", false);
}

12、打开一个网页,如果该“网页”和“flash动画”在同一个文件夹里:

on(release){
  getURL("http://ftg.5d6d.com");
}

13、打开一个网页,如果该“网页”是在网络上的其他站点里:

on(release){
  getURL(http://ftg.5d6d.com);

}

14.跳转帧(按纽动作,释放跳转)
on (release) {
gotoAndPlay(1);

}

15.播放:

on(release){play();}

16.停止:

on(release){stop();}

17.跳到第N帧开始播放:

on(release){gotoAndplay(N);}

18.跳到第N帧停止:

on(release){gotoAndstop(N);}

二.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 、简单 loading 代码:
方法 1 、使用载入字节数判断
b=getBytesTotal();// 获取总的字节数
a=getBytesLoaded();// 已经下载的字节数
onEnterFrame=function(){// 进入帧时 , 进行判断
if (a == b) {// 如果载入的字节数等于总的字节数
delete this.onEnterFrame// 删除进入帧
gotoAndPlay("frame");// 转入到你要播放的帧
] else {// 否则
a=getBytesLoaded();// 已经下载的字节数
percent=int(a/b*100)+"%";// 计算已经下载的百分比
]
}
把上面方法放入第一帧就可以了

方法 2 、使用载入的帧数判断_
用 Action 语法地 if frame. is loaded 来实现 , 新建一层,这层专门放 Action,
第一帧,
ifFrameLoaded (" 场景 ", frame) {// 假如场景中地祯数已经载入
goto and play() // 跳至并播放某某祯 ( 自己设定 )
}
第二帧, O*Np@Q
goto and play(" 场景 1", 1)// 跳至并播放第一祯循环
再加上一个 load 地 MC 循环播放在这两帧的中间,就 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 ()两个函数控制,具体代码如下:
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(); // 定义一个新的对象,用来监听 load 进程
listener.onLoadProgress=function(target,loadedBytes,totalBytes ){ //onloadprogress 加载过程中每当将加载的内容写入磁盘时调用
// 其中 loadedBytes 是已经下载的字节, totalBytes 是正在加在的文件的总字节数
x=loadedBytes
y=totalBytes
//trace(x+ " bytes 已经 load 了 ");
//trace(totalBytes + " bytes 需要 load");
d=x*100/y // 计算已经载入的百分比
)
listener.onLoadInit = function(target) // 当执行加载的剪辑的第一帧上的动作时调用
{
if(d<100){ // 如果没有加载完成,不要播放
target.stop();
} else { // 加载完成,可以设置加载的 swf 文件开始播放的帧数
target.gotoAndPlay(2);
}
target._width=400 // 设置加载的影片的大小及其位置等相关属性
target._height=350
target._x=25
target._y=50
}
mcl.addListener(listener); // 注册一个新的监听对象
mcl.loadClip("***.swf",1)// 使用自定义的对象,加载 swf 文件

4 、设为首页
on (release) {
getURL("void(document.links.style.&#98;ehavior='url(#default#homepage)');voiddocument.links.setHomePage('http://www.flash8.net/')","_self", "POST");
}
注意要将网页中的 flash 的 ID 号命名为 "links"

加入收藏夹
on (release) {
getURL("void window.external.AddFavorite('http://www.163.com',' 网页 ');","_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() 创建参数并随机取值
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 、关于随机数的技巧
用来产生 6--20 之间的 5 个不重复的随机数
1): 首先产生一个随机数 , 放在数组对象中的第一个位置
2): 产生一个新的随机数
3): 检查新产生的随机数和所有目前已产生的随机数是否相同 , 若是相同则返回 (2), 否则返回 (4)
4): 将新的随机数加入数组对象中下一个数组元素内
5): 检查数组对象个数是否已达到 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 ,在网页中使用还是必须添加额外的参数
<PARAM Name="menu" value="false">
或者用最简单的一句 as ,在 fp 和网页中均适用:
Stage.showMenu=false;

8 、如何实现双击效果?
把下面的代码放到按钮上:
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 、如果要在浏览器中实现全屏效果,只需在 html 文件中加入以下代码即可:
<script>
window.open("*.swf","","fullscreen=1,menubar=no,width=800,height=600")
</script>
其中 *.swf 为要调用的 FLASH 文件,记住要将该文件放在 html 文件的同一路径下面。要退出全屏状态需按 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 是一个构造函数,表示 mysound 是一个 Sound 对象。
以后可以通过 mysound 来调用 Sound 方法 }*HK[
2: mysound.attachSound("name"); 这里的 NAME 就是你之前在标识符里写的东西了,对应好了就 OK !
3: mysound.setVolume(50); 这个是控制声音播放时的声音大小,取值在 0 到 100 ,意义大家都知道吧,不会有人认为 0 是最大声吧 ~
4:mysound.start(0.01); 这个语句是表示开始播放声音,()里的参数表示声音开始的位置,单位为秒,再来就是循环几次 ~ 比如 mysound.start(30 , 2);// 声音从 30 秒处开始循环 2 次。

12 、倒计时
首先新建文件以后,在主场景中分别用文字工具建立三个动态文本框,变量名字分别是: leftmin,leftsec,leftmilli, 也就是分别来显示计时的分钟、秒数和毫秒数。
然后新建一层,在第一桢写上如下代码即可:(已经做了详细解释,相信大部分朋友能够理解这些代码的意思)
onLoad = function(){// 当场景加载以后执行
totalmin = 40;
totalsec = 60;
totalmilli = 100;
// 初始化一些变量,在后面的计算中要用到这些变量
}
nEnterFrame. = function(){// 逐桢执行动作"
currentsec = Math.round(getTimer()/1000);
// 求出当前影片已经播放的秒数(取整)
currentmilli = Math.round(getTimer()/10);
// 求出当前影片已经播放的毫秒数(取整)
leftsec = totalsec- currentsec;~
// 剩余的秒数等于总的秒数减去已经播放的秒数
leftmin = totalmin; ^
// 开始分钟数等于总的分钟数,开始是不变的
leftmilli = totalmilli - currentmilli;
// 剩余的毫秒数等于总的毫秒数减去已经播放的毫秒数
if(leftsec<10){leftsec = "0"+leftsec}
if(leftmin<10){leftmin = "0"+leftmin}
if(leftmilli<10){leftmilli = "0"+leftmilli}
// 以上三句是当分钟数、秒数、毫秒数小于 10 的时候,前面加上一个 “0” 。
if(leftmilli<=1){totalmilli+=100;} );
// 当计时剩下的毫秒小于 1 的时候,总秒数再加 100 ,以便下一次重新计时(这里注意得到的影片播放的毫秒数是一直增加的)
if(leftsec == 0){// 当剩余的秒数等于 0 的时候
totalsec+=60;// 类似上面的解释,总秒数加 60
totalmin-=1;// 这时候相当于过了 60 秒,所以分钟数要减 1
if(leftmin ==0){// 当分钟数等于 0 的时候,计时结束
leftsec = "00"; ,
leftmin = "00";
leftmilli = "00";
// 将三个计时框都附值为 0
delete onEnterFrame;// 删除这个逐桢动作,以节省资源
};
}
}

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)
// 设置随即数字( 1-9 )
_root.createEmptyMovieClip("pic", 1);
// 创建一个空的 PIC MC 用来装载外面载入的图片
_root.pic._x = 200;
_root.pic._y = 200;
// 简单设置一下 MC 的位置
_root.pic.loadMovie(num+".jpg",1);
// 随即载入外面的图片

15 、暂停
可以把要暂停的地方 , 帧数放长啊
或者在当前帧写
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 个数字的数组,这 30 个数字随机在 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、转下一帧并继续播放
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 跳转至某个超联结
- FSCommand 发送FSCommand命令
- Load Movie 装载影片
- Unload Movie 卸载影片
- Tell Target 告知目标
- If Frame Is Loaded ..判断帧是否被完全载入
- On Mouse Event 鼠标事件

。其他Actions。包括:

- break 跳出循环
- call 调用指定帧(一般喊有某个特定函数)
- comment 注释
- continue 继续循环
- delete 删除一个对象(Object)中的变量
- do while do while循环
- duplicateMovieClip 复制MC
- else 否则(与if联用)
- else if 否则如果(与if联用)
- evaluate 调用自定义函数(Function)
- for for循环
- for .. in 依次取得对象(Object)中的各个属性或者某个数组中的所有元素
- FSCommand 发送FSCommand命令
- function 声明自定义函数
- getURL 跳转至某个超联结
- goto 跳转到指定的帧
- if 如果
- ifFrameLoaded ..帧是否完全被载入
- include 读入外部的ActionScript程序文件(.as)
- loadMovie 装载MC
- loadVariables 转载外部文件中的数据,这些外部文件可以是文本文件,或者是由ASP/CGI等脚本返回的文本值
- on 鼠标事件的触发条件
- onClipEvent MC的事件触发程序
- play 播放
- print 输出到打印机
- removeMovieClip 删除MC
- return 在函数(function)中返回一个值
- set variable 设定变量值
- setProperty 设定属性
- startDrag 开始拖动
- stop 停止
- stopAllSounds 停止所有声音的播放
- stopDrag 停止拖动
- swapDepths 交换两个MC的深度
- tellTarget 指定Action命令生效的目标
- toggleHighQuality 在高画质和低画质间切换
- trace 跟踪调试
- unloadMovie 卸载MC
- var 声明局部变量
- while 当..成立时..
- with 对..对象(Object)做..

。操作符( Operators)
- ! 逻辑非操作
- != 不等于
- "" 字符串
- % 取余数
- && 逻辑与操作
- () 括号
- * 乘号
- + 加号
- ++ 变量自加一
- - 减号
- -- 变量自减一
- / 除号
- < 小于
- <= 小于等于
- <> 不等于
- == 相等
- > 大于
- >= 大于等于
- 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 函数
- Boolean 取表达式的布尔值(True 或 False)
- escape 除去URL串中的非法字符,将其参数按照URL编码的格式转化为字符串(String)
- eval 访问并计算表达式(expression)的值,并以字符串(String)的形式返回该值
- false 布尔非值(0)
- getProperty 获取属性
- getTimer 获取从电影开始播放到现在的总播放时间(毫秒数)
- getVersion 获取浏览器的FLASHPlayer的版本号
- globalToLocal 场景(Scene)中的坐标转换成MC中的坐标
- hitTest 测试一个点或者MC是否同另一个交叉(即冲突检测)
- int 把十进制数值强制转换成整数
- isFinite 测试数值是否为有限数
- isNaN 测试是否为非数值
- keycode 返回键盘按下键的键盘值(ASCII值)
- localToGlobal MC中的坐标转换成场景(Scene)中的坐标
- maxscroll 文本框的最大行度
- newline 换行符
- Number 将参数转换成数值其返回值有以下四种情况:

如果 x 为一数字,则返回值即为该数字;如果 x 为一布尔数,则返回0或1;如果 x 为一字符串,则函数将x解释为一个指数形式的十进制数;如果x未定义,则返回0。
- parseFloat 将字符串转换成浮点数
- parseInt 将字符串转换成整数
- random 产生0到指定数间的随机数
- scroll 文本框中的起始滚动行
- String 将参数转换成字符串
- targetPath 返回指定实例MC的路径字符串
- true 布尔是值(1)
- unescape 保留字符串中的%XX格式的十六进制字符
+ String Functions 字符串函数
- chr 将ASCII码转换成相应字符
- length 返回字符串的长度
- mbchr 将ASCII/S-JIS编码转换成相应的多字节字符
- mblength 返回多字节字符串的长度
- mbord 将多字节字符转换成相应的ASCII/S-JIS编码
- mbsubstring 截取多字节字符串中的字串
- ord 将字符转换成ASCII码
- substring 截取字符串中的子串
+ Properties 属性
- _alpha Alpha值(透明度值)
- _currentframe 在MC中的当前帧数
- _droptarget 当使用Start drag拖动一个MC时,实时地返回该MC的绝对路径
- _focusrect 高亮按钮或者某个当前区域的显示与否(True显示/Flase不显示)
- _framesloaded 已载入的影帧数
- _height MC的高度
- _highquality 画质的高低(True高画质/False低画质)
- _name MC的实例名
- _quality 当前画质(字符串值) LOW,MEDIUM,HIGH,BEST
- _rotation MC旋转的角度(单位:度)
- _soundbuftime 声音的缓冲区大小(默认值5,单位:秒)
- _target MC的路径
- _totalframes 总帧数
- _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 数组
- concat 合并多个数组
- join 将一个数组中的元素转化成字符串,并通过特定的分割符进行联结,并返回结果字符串
- length 返回数组长度
- new Array 新建数组对象
- pop 出栈 (FILO 先入后出)
- push 入栈 (入队列)
- reverse 反相(颠倒数组,及第一个元素和最后一个元素互换……)
- shift 出队列 (FIFO 先入先出)
- slice 截取数组中的子串生成新的数组
- sort 数组元素的排序
- splice 从数组中指定元素起删除指定个数的元素或者删除指定元素
- unshift 从数组头部插入一个元素
+ Boolean 布尔对象
- new Boolean 新建布尔型对象
- toString 将布尔型对象的值转换成字符串值
- valueOf 获取布尔型对象的值(返回值为布尔型)
+ Color 颜色对象
- getRGB 获取颜色值的RGB分量(返回值0xRRGGBB十六进制)
- getTransform 获取颜色值的转换量(返回值 cxform 型) [不太清楚]
- new Color 新建一颜色对象
- setRGB 设置颜色值的RGB分量(参数为0xRRGGBB十六进制)
- setTransform 设置颜色值的转换量(参数为 cxform 型) [不太清楚]
+ Date 时间和日期对象
- getDate 获取当前日期(本月的几号)
- getDay 获取今天是星期几(0-Sunday,1-Monday...)
- getFullYear 获取当前年份(四位数字)
- getHours 获取当前小时数(24小时制,0-23)
- getMilliseconds 获取当前毫秒数
- getMinutes 获取当前分钟数
- getMonth 获取当前月份(注意从0开始:0-Jan,1-Feb...)
- getSeconds 获取当前秒数
- getTime 获取UTC格式的从1970.1.1 0:00以来的秒数
- getTimezoneOffset 获取当前时间和UTC格式的偏移值(以分钟为单位)
- getUTCDate 获取UTC格式的当前日期(本月的几号)
- getUTCDay 获取UTC格式的今天是星期几(0-Sunday,1-Monday...)
- getUTCFullYear 获取UTC格式的当前年份(四位数字)
- getUTCHours 获取UTC格式的当前小时数(24小时制,0-23)
- getUTCMilliseconds 获取UTC格式的当前毫秒数
- getUTCMinutes 获取UTC格式的当前分钟数
- getUTCMonth 获取UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
- getUTCSeconds 获取UTC格式的当前秒数
- getYear 获取当前缩写年份(当前年份减去1900)
- new Date 新建日期时间对象
- setDate 设置当前日期(本月的几号)
- setFullYear 设置当前年份(四位数字)
- setHours 设置当前小时数(24小时制,0-23)
- setMilliseconds 设置当前毫秒数
- setMinutes 设置当前分钟数
- setMonth 设置当前月份(注意从0开始:0-Jan,1-Feb...)
- setSeconds 设置当前秒数
- setTime 设置UTC格式的从1970.1.1 0:00以来的秒数
- setUTCDate 设置UTC格式的当前日期(本月的几号)
- setUTCFullYear 设置UTC格式的当前年份(四位数字)
- setUTCHours 设置UTC格式的当前小时数(24小时制,0-23)
- setUTCMilliseconds 设置UTC格式的当前毫秒数
- setUTCMinutes 设置UTC格式的当前分钟数
- setUTCMonth 设置UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
- setUTCSeconds 设置UTC格式的当前秒数
- 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 数学函数对象
- 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的上限的整数(向上取整)
- cos cos(n) 取n的余弦(n的单位:弧度)
- E Euler(欧拉)指数(约为2.718)
- exp 指数
- floor floor(n) 取靠近n的下限的整数(向下取整)
- LN10 ln10(约等于2.302)
- LN2 ln2(约等于0.693)
- log 取自然对数(e为底)
- LOG10E 10为底取E的对数(约等于0.434)
- LOG2E 2为底取E的对数(约等于1.443)
- max 返回两参数中的最大值
- min 返回两参数中的最小值
- PI 圆周率(约等于3.14159)
- pow pow(x,y) x的y次方
- random 产生0-1间的随机数
- 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创建的MC
- startDrag 开始拖动MC
- stop 停止MC的播放
- stopDrag 停止拖动MC
- unloadMovie 卸载由loadMovie引入的Movie
+ Mouse 鼠标对象
- hide 隐藏鼠标指针
- show 显示鼠标指针
+ Number 数值对象
- MAX_value FLASH5 所允许的最大数值1.79769313486231 e 308
- MIN_value FLASH5 所允许的最小数值5 e -324
- NaN 是否为非数值(Not a Number)
- NEGATIVE_INFINITY 是否为负数
- new Number 新建数值对象
- POSITIVE_INFINITY 是否为正数
- toString 将数值转换成字符串
+ Object 对象
- new Object 新建对象
- toString 转换对象为字符串
- valueOf 返回对象的值
+ Selection 选择区对象
- getBeginIndex 获取可编辑文本区的起始位置,-1表示无可编辑文本区
- getCaretIndex 获取当前的编辑位置,-1表示没有可编辑文本区
- getEndIndex 获取可编辑文本区的结束位置,-1表示无可编辑文本区
- getFocus 获取当前的激活文本区的文本变量名
- setFocus 设置当前的激活文本区
- setSelection 设置可编辑文本的起始位置和终止位置
+ Sound 声音对象
- attachSound 绑定库中的一个声音
- getPan 获取声音的混音值 [不太清楚]
- getTransform 获取当前声音的变换量(返回值类型:sxform) [不太清楚]
- getVolume 获取当前声音的音量(百分比)
- new Sound 新建声音对象
- setPan 设置声音的混音值 [不太清楚]
- setTransform 设置当前声音的变换量(参数类型:sxform) [不太清楚]
- setVloume 设置当前声音的音量(百分比)
- start 开始播放当前声音
- stop 停止播放当前声音
+ String 字符串对象
- charAt 在指定的索引表中返回一个字符
- charCodeAt 在指定的索引表中返回一个字符的代码
- concat 联结合并多个字符串
- fromCharCode 从字符代码组构造出一个新的字符串
- indexOf 在字符串中寻找子串,返回子串起始位置或-1(-1表示未找到)
- lastIndexOf 在字符串中寻找子串,返回子串终止位置或-1(-1表示未找到)
- length 返回字符串的长度
- new String 新建字符串对象
- slice 返回字符串中指定截取的子串
- split 根据限定符将字符串转换成一个数组
- substr substr( start, length ) 返回从start开始,共length长的子串
- substring substring( indexA, indexB ) 返回indexA..indexB之间的子串
- toLowerCase 将字符串中的大写字符全部转换成小写
- toUpperCase 将字符串中的小写字符全部转换成大写
+ XML 可扩充性标记语言对象
- appendChild 添加一个子结点到指定的XML元素
- attributes XML元素的属性数组
- childNodes 一个XML元素的子结点数组
- cloneNode 克隆(复制)当前结点
- createElement 新建一个新的XML元素
- createTextNode 新建一个新的XML文本结点
- firstChild 返回当前XML结点的第一个子结点
- hasChildNodes 当前XML结点是否有子结点(返回true有子结点/flash则无)
- insertBefore 在一个指定的XML元素的子结点前插入一个新的子结点
- lastChild 返回当前XML结点的最后一个子结点
- load 从指定的URL把XML元素引入FLASH中
- loaded 当XML元素引入或是发送同时引入FLASH中后,返回true值
- new XML 新建一个XML对象
- nextSibling 当前XML结点的下一个结点
- nodeName 返回当前XML结点的名字
- nodeType 返回当前XML结点的类型(1-元素,3-文本)
- nodevalue 返回当前XML结点的值(text型返回文本)
- onLoad 当引入或发送同时引入时触发事件
- parentNode 返回当前XML结点的父结点
- parseXML 将XML字符串转换成XML对象
- previousSibling 当前XML结点的前一个结点
- removeNode 从XML文本中删除结点
- send 从FLASH中把一个XML元素发送到指定的URL地址
- sendAndLoad 从FLASH中把一个XML元素发送到指定的URL地址同时引入XML结果
- toString 把XML对象转换为XML字符串表达
+ XMLSocket XML套接口
- close 关闭一个XML套接口
- connect 连接一个XML套接口,指定URL,并定义其端口号
- new XMLSocket 建立一个新的XML套接口
- onClose 关闭XML套接口时触发事件
- onConnect 连接XML套接口时触发事件
- onXML 从服务器上获取XML时触发事件
- send 发送XML给服务器


FLASH动作脚本代码集锦

1 、简单 loading 代码:
方法 1 、使用载入字节数判断
b=getBytesTotal(); 获取总的字节数
a=getBytesLoaded(); 已经下载的字节数
onEnterFrame=function(){ 进入帧时 , 进行判断
if (a == b) { 如果载入的字节数等于总的字节数
delete this.onEnterFrame 删除进入帧
gotoAndPlay(frame); 转入到你要播放的帧
] else { 否则
a=getBytesLoaded(); 已经下载的字节数
percent=int(ab100)+%; 计算已经下载的百分比
]
}
把上面方法放入第一帧就可以了

方法 2 、使用载入的帧数判断_
用 Action 语法地 if frame is loaded 来实现 , 新建一层,这层专门放 Action,
第一帧,
ifFrameLoaded ( 场景 , frame) { 假如场景中地祯数已经载入
goto and play() 跳至并播放某某祯 ( 自己设定 )
}
第二帧, ONp@Q
goto and play( 场景 1, 1) 跳至并播放第一祯循环
再加上一个 load 地 MC 循环播放在这两帧的中间,就 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 ()两个函数控制,具体代码如下:
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(); 定义一个新的对象,用来监听 load 进程
listener.onLoadProgress=function(target,loadedBytes,totalBytes ){ onloadprogress 加载

过程中每当将加载的内容写入磁盘时调用
其中 loadedBytes 是已经下载的字节, totalBytes 是正在加在的文件的总字节数
x=loadedBytes
y=totalBytes
trace(x+ bytes 已经 load 了 );
trace(totalBytes + bytes 需要 load);
d=x100y 计算已经载入的百分比
)
listener.onLoadInit = function(target) 当执行加载的剪辑的第一帧上的动作时调用
{
if(d100){ 如果没有加载完成,不要播放
target.stop();
} else { 加载完成,可以设置加载的 swf 文件开始播放的帧数
target.gotoAndPlay(2);
}
target._width=400 设置加载的影片的大小及其位置等相关属性
target._height=350
target._x=25
target._y=50
}
mcl.addListener(listener); 注册一个新的监听对象
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);
}
注意要将网页中的 flash 的 ID 号命名为 links

加入收藏夹
on (release) {
getURL(void window.external.AddFavorite(' httpwww.163.com',' 网页 ');,_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() 创建参数并随机取值
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 、关于随机数的技巧
用来产生 6--20 之间的 5 个不重复的随机数
1) 首先产生一个随机数 , 放在数组对象中的第一个位置
2) 产生一个新的随机数
3) 检查新产生的随机数和所有目前已产生的随机数是否相同 , 若是相同则返回 (2), 否则返回 (4)
4) 将新的随机数加入数组对象中下一个数组元素内
5) 检查数组对象个数是否已达到 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 ,在网页中使用还是必须添加额外的参数
PARAM Name=menu value=false
或者用最简单的一句 as ,在 fp 和网页中均适用:
Stage.showMenu=false;

8 、如何实现双击效果?
把下面的代码放到按钮上:
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 、如果要在浏览器中实现全屏效果,只需在 html 文件中加入以下代码即可:
scrīpt
window.open(.swf,,fullscreen=1,menubar=no,width=800,height=600)
scrīpt
其中 .swf 为要调用的 FLASH 文件,记住要将该文件放在 html 文件的同一路径下面。要退出全屏状

态需按 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 是一个构造函数,表

示 mysound 是一个 Sound 对象。
以后可以通过 mysound 来调用 Sound 方法 }HK[
2: mysound.attachSound(name); 这里的 NAME 就是你之前在标识符里写的东西了,对应好了就 OK


3: mysound.setVolume(50); 这个是控制声音播放时的声音大小,取值在 0 到 100 ,意义大家都

知道吧,不会有人认为 0 是最大声吧 ~
4:mysound.start(0.01); 这个语句是表示开始播放声音,()里的参数表示声音开始的位置,单位

为秒,再来就是循环几次 ~ 比如 mysound.start(30 , 2); 声音从 30 秒处开始循环 2 次。

12 、倒计时
首先新建文件以后,在主场景中分别用文字工具建立三个动态文本框,变量名字分别是:

leftmin,leftsec,leftmilli, 也就是分别来显示计时的分钟、秒数和毫秒数。
然后新建一层,在第一桢写上如下代码即可:(已经做了详细解释,相信大部分朋友能够理解这些代码

的意思)
onLoad = function(){ 当场景加载以后执行
totalmin = 40;
totalsec = 60;
totalmilli = 100;
初始化一些变量,在后面的计算中要用到这些变量
}
ōnEnterFrame = function(){ 逐桢执行动作
currentsec = Math.round(getTimer()1000);
求出当前影片已经播放的秒数(取整)
currentmilli = Math.round(getTimer()10);
求出当前影片已经播放的毫秒数(取整)
leftsec = totalsec- currentsec;~
剩余的秒数等于总的秒数减去已经播放的秒数
leftmin = totalmin; ^
开始分钟数等于总的分钟数,开始是不变的
leftmilli = totalmilli - currentmilli;
剩余的毫秒数等于总的毫秒数减去已经播放的毫秒数
if(leftsec10){leftsec = 0+leftsec}
if(leftmin10){leftmin = 0+leftmin}
if(leftmilli10){leftmilli = 0+leftmilli}
以上三句是当分钟数、秒数、毫秒数小于 10 的时候,前面加上一个 “0” 。
if(leftmilli=1){totalmilli+=100;} );
当计时剩下的毫秒小于 1 的时候,总秒数再加 100 ,以便下一次重新计时(
本文发布于北京网站建设公司尚品中国http://www.sino-web.net/

400-700-4979

无论您在哪里,尚品都愿意为您提供高价值服务! 请选择您方便的咨询方式: