Flex 常见特效

常见效果类:

<wbr><wbr><wbr><wbr><wbr> AnimateProperty:动画属性<br><wbr><wbr><wbr><wbr><wbr> Blur :模糊<br><wbr><wbr><wbr><wbr><wbr> Desolve :溶解<br><wbr><wbr><wbr><wbr><wbr> Fade :凋零<br><wbr><wbr><wbr><wbr><wbr> Glow :发光<br><wbr><wbr><wbr><wbr><wbr> Iris :瞳孔放大缩小<br><wbr><wbr><wbr><wbr><wbr> Move :移动<br><wbr><wbr><wbr><wbr><wbr> Pause :定格<br><wbr><wbr><wbr><wbr><wbr> Resize :改变大小<br><wbr><wbr><wbr><wbr><wbr> Rotate :旋转<br><wbr><wbr><wbr><wbr><wbr> SoundEffect :音效<br><wbr><wbr><wbr><wbr><wbr> (WipeLeft, WipeRight, WipeUp, WipeDown) :擦拭<br><wbr><wbr><wbr><wbr><wbr> Zoom :放大缩小</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> Sequence:顺序播放组合</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> Parallel:同时播放组合</wbr></wbr></wbr></wbr></wbr>

常见触发动画效果方式:

<wbr><wbr><wbr><wbr><wbr> AddedEffect :加入容器<br><wbr><wbr><wbr><wbr><wbr> creationCompleteEffect :创建完成<br><wbr><wbr><wbr><wbr><wbr> focusInEffect :获得键盘输入<br><wbr><wbr><wbr><wbr><wbr> focusOutEffect :失去键盘输入<br><wbr><wbr><wbr><wbr><wbr> hideEffect :visable属性设置为false<br><wbr><wbr><wbr><wbr><wbr> mouseDownEffect :鼠标按下<br><wbr><wbr><wbr><wbr><wbr> mouseUpEffect :鼠标按起<br><wbr><wbr><wbr><wbr><wbr> moveEffect :被拖动<br><wbr><wbr><wbr><wbr><wbr> resizeEffect :重新设定大小<br><wbr><wbr><wbr><wbr><wbr> removedEffect :被移除<br><wbr><wbr><wbr><wbr><wbr> rollOutEffect :鼠标移到控件外<br><wbr><wbr><wbr><wbr><wbr> rollOverEffect :鼠标移到控件上<br><wbr><wbr><wbr><wbr><wbr> showEffect :visable属性设置为true</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

部分示例:

<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

1:glow(发光)

代码:

<mx:Glow id="glow" duration="1000"

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> alphaFrom="0.6" alphaTo="0.2"</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> blurXFrom="0.0" blurXTo="50.0"</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> blurYFrom="0.0" blurYTo="50.0"</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> color="0xffffff"/&gt;</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

duratuion 是特效的时间 1000 毫秒

alphaFrom 是透明度从 0.6 开始

alphaTo 是透明度到 0.2

blurXFrom 是X放向的模糊开始位置(相对于控件的)

blurXTo 是X放向的模糊结束位置(相对于控件的)

blurYFrom 是Y放向的模糊开始位置(相对于控件的)

blurYTo 是Y放向的模糊结束位置(相对于控件的)

color 是发光的颜色

<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>

2:Sequence (顺序) Bounce(弹跳)

代码:

import mx.effects.easing.*;

<mx:Sequence id="movePauseMove">

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> &lt;mx:Move yBy="-150" duration="1000" easingFunction="Bounce.easeOut"/&gt;</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr> &lt;mx:Move yBy="150" duration="1000" easingFunction="Bounce.easeIn"/&gt;</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr> &lt;/mx:Sequence&gt;</wbr></wbr></wbr>

yBy 是作用在Y方向。

duratuion 是特效的时间 1000 毫秒

easingFunction 是松开动作

Bounce.easeOut 是跳出的动作

Bounce.easeIn 是跳回的动作

<wbr></wbr>

作用到控件:

<mx:Image source="../assets/zh_cn_ptn_090722.png"<wbr></wbr>

mouseDownEffect="{movePauseMove}"

id="image4"/>

<wbr></wbr>

自定义效果:

<wbr><wbr><wbr><wbr><wbr> 每个效果都是由两个元素组成的,分别是EffectInstance效果实例与Effect类工厂。所以在自定义效果的时候,也要成对的创建这两个类的子类,并分别继承自EffectInstance类和Effect类。如:</wbr></wbr></wbr></wbr></wbr>

public class TestEffect extends Effect   
    {   
        public var alp:Number;   
        public var col:uint;   
        public function TestEffect(target:Object=null)   
        {   
            super(target);   
            instanceClass = TestInstance;   
        }   
           
        override protected function initInstance(instance:IEffectInstance):void{   
            super.initInstance(instance);   
            TestInstance(instance).col = this.col;   
            TestInstance(instance).alp = this.alp;   
        }   
    }   
   
   
   
public class TestInstance extends EffectInstance   
    {   
           
        public var alp:Number;   
        public var col:uint;   
           
        public function TestInstance(target:Object)   
        {   
            super(target);   
        }   
           
        override public function play():void{   
            super.play();   
            (target as DisplayObject).alpha = this.alp;   
            var shape:FlexShape = new FlexShape();   
            shape.graphics.beginFill(col,1.0);   
            shape.graphics.drawRect(0,0,(target as DisplayObject).width,(target as DisplayObject).height);   
            shape.graphics.endFill();   
            var uiComp:UIComponent = new UIComponent();   
            uiComp.addChild(shape);   
            UIComponent(target).addChild(uiComp);   
        }   
    }   


<wbr></wbr>

public class TestEffect extends Effect
        {
                public var alp:Number;
                public var col:uint;
                public function TestEffect(target:Object=null)
                {
                        super(target);
                        instanceClass = TestInstance;
                }
                
                override protected function initInstance(instance:IEffectInstance):void{
                        super.initInstance(instance);
                        TestInstance(instance).col = this.col;
                        TestInstance(instance).alp = this.alp;
                }
        }



public class TestInstance extends EffectInstance
        {
                
                public var alp:Number;
                public var col:uint;
                
                public function TestInstance(target:Object)
                {
                        super(target);
                }
                
                override public function play():void{
                        super.play();
                        (target as DisplayObject).alpha = this.alp;
                        var shape:FlexShape = new FlexShape();
                        shape.graphics.beginFill(col,1.0);
                        shape.graphics.drawRect(0,0,(target as DisplayObject).width,(target as DisplayObject).height);
                        shape.graphics.endFill();
                        var uiComp:UIComponent = new UIComponent();
                        uiComp.addChild(shape);
                        UIComponent(target).addChild(uiComp);
                }
        }

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> 1)当想手动播放某效果时,调用效果实例的play方法即可,为了稳定,一般在调用play方法前先调用一下end,来保证先前效果已结束。</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> 2) 当给对象添加触发效果方式时:uicompnent.setStyle("触发方式",特效对象);</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr> 3)运用组合效果(Sequence与Parallel)时,调用该效果的addChild方法即可,将子效果添加的组合效果对象中。如:</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

Sequence.addChild(move);
Sequence.addChild(glow);


资源下载链接为: https://pan.quark.cn/s/7cc20f916fe3 以下是对“js做的期末项目”的介绍:这是一个以童话为主题的前端开发作品,通过一系列功能实现,打造出了一个互动性强且视觉效果吸引人的用户界面,充分展现了作者对JavaScript语言的掌握程度。在项目中,作者运用了诸多JavaScript知识点。首先是DOM操作,JavaScript与HTML文档对象模型(DOM)紧密相连,可动态地创建、修改或删除页面元素,像document.getElementById()、document.querySelector()或document.querySelectorAll()等方法,就可能被用于选择和操作DOM节点。其次,为实现用户交互,例如轮播图切换等功能,addEventListener()函数被用来添加事件监听器,涵盖点击、滑动等事件,事件处理函数则依据用户行为执行相应逻辑。再者,JavaScript能够改变元素的CSS样式,通过element.style.property = value的方式,实现诸如轮播图过渡动画、照片墙图片淡入淡出等动态效果。在处理照片墙等涉及集合数据的场景时,数组的遍历方法,如forEach()、for...of循环或map()等,可能会被用到,以便显示或操作多个元素。闭包(Closure)在项目中也发挥了作用,它常用于封装私有变量和函数,保障数据安全,同时实现一些特定功能,像计时器控制等。为了实现自动轮播等功能,setTimeout()或setInterval()函数被用来定期执行任务,比如切换图片。在控制程序流程方面,if...else、switch语句以及逻辑运算符&&、||、!不可或缺,它们依据条件执行不同的代码块。函数是JavaScript的重要组成部分,项目中可能定义了多个函数,包括初始化页面、处理用户输入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值