Flash XML写了个类似韩国菜单的效果
2008-04-02 11:01:09来源:互联网 阅读 ()
因为这次这个效果是公司的任务,我也是顺便共享出来给大家,希望给新手一些帮助,但是我并没有写出注释,希望需要的人自己能分析下,语法不算复杂!
AS代码如下:
System.useCodepage=true;
Stage.scaleMode="noScale";
Stage.showMenu=false;
Stage.align="T";
varmxml:XML=newXML();
mxml.ignoreWhite=true;
mxml.load("MenuList.xml");
varpageID:Number=0;
mxml.onLoad=function(success){
if(!success){
trace("XML文档装载失败!");
}else{
menuList=mxml.firstChild.childNodes;
InitMenu();
}
};
functionInitMenu(){
createEmptyMovieClip("myMenu",-1);
myMenu._y=263;
myMenu.onEnterFrame=InitMenuX;
MLN=menuList.length;
for(i=0;i<MLN;i ){
loads=createEmptyMovieClip("loadx" i,i);
loads.loadMovie(menuList[i].attributes.swf);
loads._xscale=loads._yscale=0;
loads._visible=false;
menus=myMenu.attachMovie("menu","menu" i,i);
menus.menu_box._visible=false;
menus.menu_box._xscale=1;
menus.MName.text=menuList[i].attributes.name;
menus.id=i;
menus.onRollOver=menuOver;
menus.onRelease=menuRelease;
}
myMenu["menu" pageID].onEnterFrame=menuOver;
}
functionInitCMenu(cmenuMC){
createEmptyMovieClip("CMenu",-2);
myMC=cmenuMC;
CMenu._y=-50;
CMenu.onEnterFrame=InitCMenuX;
cmenuList=menuList[cmenuMC.id].childNodes;
CLL=cmenuList.length;
for(i=0;i<CLL;i ){
cmenus=CMenu.attachMovie("cmenu","cmenu" i,i);
cmenus.CMenu.text=cmenuList[i].attributes.name;
cmenus.id=i;
cmenus.onRelease=function(){
getURL(cmenuList[this.id].attributes.url);
};
}
}
functionmenuOver(){
menu_box_fun(this);
this.loadICon.loadMovie(menuList[this.id].attributes.swf);
this.loadICon._x=7;
this.loadICon._alpha=0;
this.onEnterFrame=function(){
if(this.loadICon._height!=0){
this.loadICon._y=(this.menu_box._y this.menu_box._height)-this.loadICon._height;
if(this.loadICon._alpha<100){
this.loadICon._alpha =4.5;
}else{
deletethis.onEnterFrame;
}
}
};
my_color=newColor(this.MName);
my_color.setRGB(0xffffff);
InitCMenu(this);
}
functionmenuRelease(){
getURL(menuList[this.id].attributes.url);
}
functionmenu_box_fun(thisMC){
for(i=0;i<MLN;i ){
menus=myMenu["menu" i];
if(menus==thisMC){
menus.menu_box._visible=true;
menus.menu_box._xscale=100;
}else{
menus.loadICon.unloadMovie();
menus.menu_box._visible=false;
menus.menu_box._xscale=1;
my_color=newColor(menus.MName);
my_color.setRGB(0xF3D686);
}
}
}
functionInitMenuX(){
for(i=0;i<MLN;i ){
menus=myMenu["menu" i];
mmbv=menus.menu_box._visible;
menus.MName._x =mmbv==true?(60-menus.MName._x)*0.2:(0-menus.MName._x)*0.2;
menux=myMenu["menu" (i-1)];
menuXW=menux._x menux._width;
menus._x =(menuXW-menus._x)*0.2;
}
myMenu._x =((flash_box._width-(myMenu._width 10))-myMenu._x)*0.2;
}
functionInitCMenuX(){
for(i=0;i<CLL;i ){
cmenus=CMenu["cmenu" i];
cmenux=CMenu["cmenu" (i-1)];
cmenuXW=cmenux._x cmenux._width;
cmenus._x =(cmenuXW-cmenus._x)*0.2;
}
myX=myMC.MName._x myMC._x myMenu._x;
CMenu._x=myX CMenu._width>1000?1000-CMenu._width:myX;
CMenu._y=myMenu._y 41;
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇: FLASH制作一个能够伸缩的导航条
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash