代码之家  ›  专栏  ›  技术社区  ›  AaronLS

带灵活/动作脚本的闪烁按钮

  •  1
  • AaronLS  · 技术社区  · 15 年前

    我想让一个按钮在响应事件时闪烁红色,然后在按下按钮时停止闪烁。这很像飞机上的主警报按钮。所以闪光效果应该是我可以通过编程来停止的。

    我看到过一个使用计时器的例子,但是我想避免使用计时器,因为我不喜欢使用计时器,除非我真的需要。让所有的计时器去做一些琐碎的小事情,似乎真的很混乱。

    我的希望是有一些方法可以用flash或者别的什么来做一些动画,只需告诉动画播放使按钮闪烁,然后停止/重置动画使其恢复到原来的不闪烁状态。

    我使用的是flex builder 3。我不熟悉动作脚本和flex/flash。

    有人能告诉我怎么做吗?或者告诉我一些信息?

    谢谢。

    3 回复  |  直到 15 年前
        1
  •  1
  •   James Fassett    15 年前

    正如凯伊指出的,当涉及到程序动画时,你真的想要使用一个tween库。事实是,有人可能已经写了一个比你能写的更有效的解决方案——并且会给你 自由的 .

    有很多很多种选择。Tweenlite的维护者有一个 speed comparison of ActionScript 3 tween engines 在他的网站上。

    • Tweener 是一个非常受欢迎的图书馆,但它的性能和规模最近已被其他图书馆所取代。
    • TweenLite 是一个小型和快速的图书馆,正在流行。开发商还维护 TweenMax 更具特色的花呢。
    • Tweensy 另一个自称速度非常快的自由党
    • gTween 是AS3大师格兰特·斯金纳的另一个中间人。

    执行所需操作的语法将取决于库,但在每一个库中使用红色按钮都很简单。我建议您熟悉一个或多个Tween库来做这类事情——从长远来看,这将节省您大量的时间。

        2
  •  3
  •   Cay    15 年前

    我试着用镊子机…像这样:

    function flash() {
       TweenLite.to(button, .5, {tint:0xFF0000, onComplete:unflash});
    }
    function unflash() {
       TweenLite.to(button, .3, {removeTint:true, onComplete:flash});
    }
    
    function deleteFlashing(e) {
       TweenLite.killTweensOf(button);
       TweenLite.to(button, .2, {removeTint:true});
    }