热门文章 | 热门软件| 热门源码 | 热门电影 | 知识库 | 联系我们
软件 源码 教程 影视 健康 招聘
  HTML | JavaScript | ASP | PHP | JSP | NET | VB | VC | VF | Windows | Linux | Mysql | Mssql | Oracle | Struts 
当前位置: 创世纪计算机资源网 -> 文章频道 ->flash 
站内搜索:
解决两个onEnterFrame冲突的N种解决办法
作者:灰昼 来源:blog 整理日期:2007-10-9

在经典发了个帖子,感谢这火山 nang abc12hjc 和riafan 的帮助。
/*个人的方法 以父级和子级错开onEnterFrame*/
/*第一种方法  by 寂寞火山*/
btn1.onRelease=function(){
  btn="btn1";
  hanShu();
}

btn2.onRelease=function(){
  btn="btn2";
  hanShu();
}

function hanShu(){
onEnterFrame=function(){
  if(btn=="btn1"){
    trace("btn1");
  }else if(btn=="btn2"){
    trace("btn2");
  }
}
}

//第二种方法  by Nang
var num:Number = 0;
btn2.onRollOver = function() {
       num = 5;
       alphaUp(mc1);
};
btn2.onRollOut = function() {
       num = -5;
       alphaDown(mc1);
};
btn3.onRollOver = function() {
       num = 5;
       alphaUp(mc2);
};
btn3.onRollOut = function() {
       num = -5;
       alphaDown(mc2);
};
function alphaUp(aaa) {
       onEnterFrame = function () {
              aaa._alpha += num;
              if (aaa._alpha>=110 | aaa._alpha<=0) {
                     delete onEnterFrame;
              }
       };
}

//第3种方法  by棉花堂
btn2.onRollOver = function() {
       alphaChange(mc1, 5);
};
btn2.onRollOut = function() {
       alphaChange(mc1, -5);
};
btn3.onRollOver = function() {
       alphaChange(mc2, 5);
};
btn3.onRollOut = function() {
       alphaChange(mc2, -5);
};

function alphaChange ($mc:MovieClip, $step:Number)
{
    $mc.onEnterFrame = function ()
    {
        this._alpha += $step;
        if ((this._alpha > 100) || (this._alpha < 0)) delete this.onEnterFrame;
    }
}

相关文章
暂无