Flash AS特效:超绚丽的闪字动画
2008-05-28 11:20:52 来源:WEB开发网本文示例源代码或素材下载
下午用了1个小时左右弄好的,刚完工,累啊...为了闪吧2008兴旺发展,请帮我顶此帖... 效果:按每个字都会动,按“闪”就可以拖动,后面的字跟随,放开“闪”后,又恢复原来的运动。
代码如下:
/*作者:梦自在*/
import mx.transitions.*;
import mx.transitions.easing.*;
var r:Number = 45;
var p:Number = 0;
var drag:Boolean = false;
var num:Number = 0;
var name_array:Array = new Array("闪", "吧", "2", "0", "0", "8", "兴", "旺", "发", "展");
this.createEmptyMovieClip("container", this.getNextHighestDepth());
/*旋转*/
function start_func() {
for (var i:Number = 0; i<=9; i++) {
container.attachMovie("ball", "ball"+i, i);
container["ball"+i]._x = 225+r*(Math.abs(4.5-i))*Math.cos((135-(Math.floor((i/5))*180))*Math.PI/180);
container["ball"+i]._y = 225+r*(Math.abs(4.5-i))*Math.sin((135-(Math.floor((i/5))*180))*Math.PI/180);
container["ball"+i].txt.text = name_array[i];
container["ball"+i].i = i;
container["ball"+i].onEnterFrame = function() {
var my_color:Color = new Color(this._mc);
my_color.setRGB(Math.random()*0xFFFFFF);
this._x = 225+r*(Math.abs(4.5-this.i))*Math.cos(((135-(Math.floor((this.i/5))*180))+p)*Math.PI/180);
this._y = 225+r*(Math.abs(4.5-this.i))*Math.sin(((135-(Math.floor((this.i/5))*180))+p)*Math.PI/180);
p = p+0.5;
};
container["ball"+i].onPress = function() {
var myTween:Tween = new Tween(this, "_xscale", Elastic.easeOut, 100, 200, 1, true);
var myTween:Tween = new Tween(this, "_yscale", Elastic.easeOut, 100, 200, 1, true);
};
container["ball"+i].onRelease = function() {
var myTween:Tween = new Tween(this, "_xscale", Elastic.easeOut, 200, 100, 1, true);
var myTween:Tween = new Tween(this, "_yscale", Elastic.easeOut, 200, 100, 1, true);
};
}
}
start_func();
/*拖动跟随*/
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
if (container["ball"+0].hitTest(_root._xmouse, _root._ymouse)) {
drag = true;
}
};
mouseListener.onMouseMove = function() {
if (drag) {
num = 1;
delete container["ball"+0].onEnterFrame;
container["ball"+0]._x = _root._xmouse;
container["ball"+0]._y = _root._ymouse;
for (var i:Number = 1; i<=9; i++) {
delete container["ball"+i].onEnterFrame;
container["ball"+i]._x += (container["ball"+(i-1)]._x-container["ball"+i]._x)/3;
container["ball"+i]._y += (container["ball"+(i-1)]._y-container["ball"+i]._y)/3;
}
}
};
mouseListener.onMouseUp = function() {
drag = false;
/*拖动后才能恢复*/
if(num==1){
start_func();
num=0;
}
};
Mouse.addListener(mouseListener);
- ››asp.net页面弄成伪静态页面
- ››Asp.net 中将汉字转换成拼音的方法
- ››ASP.NET及JS中的cookie基本用法
- ››ASP.NET获取MS SQL Server安装实例
- ››asp.net实现调用百度pai 在线翻译英文转中文
- ››ASP.NET页面选项进行提示判断
- ››Asp.net定时执行程序
- ››ASP.NET中利用DataList实现图片无缝滚动
- ››ASP.NET验证控件RequiredFieldValidator
- ››ASP.NET中使用System.Net.Mail发邮件
- ››ASP.NET中获取用户控件中控件的ID
- ››ASP.NET中FileBytes写成文件并存档
更多精彩
赞助商链接