图片flash动态缓冲图片导航制作详解

flash导航  时间:2021-02-16  阅读:()

缓冲公式在制作特效中非常有用著名的三星导航菜单就用到了此公式。现在许多网站出尽风头其中缓冲导航是其一大亮点。本文以一德国网站的导航为例详解缓冲导航的制作。这个效果是我和溶剂共同完成的他提供坐标的算法我提供缩放的算法。

本例效果演示

鼠标划过的部分图片会变大

制作思路

图片缩放控制

利用缓冲公式设置图片的缩放比例如果鼠标滑过某图片放大1.8倍。如果其它图片的序号与此图片的序号相差1就是此图片两边的图片放大1.4倍其它的为原始大小。

图片坐标控制

当某图片放大时相邻的图片的坐标等于此图片的坐标加上这两张图片的宽度的一半实现图片无间距排列。

线条和文字控制

线条用画线函数实现文字的坐标和缩放比例与对应的图片相同。

制作过程

1、启动Flash新建一个影片设置影片大小为600px*200px。

准备好如图中的素材 图片的实例名分别为zjs0到zjs4文字的实例名分别为z0到z4。

把中间的图片坐标设为(300,130)选中全部的图片按CTRLK调出排列面板设置为顶部对齐使图片的y坐标相同 图片的x坐标通过AS来控制。用同样的方法使方字的y坐标相同并调整好文字和图片的间距。

2、在主场景中的第一帧上添加下列代码

//获取中间图片的x坐标for(var i=0; i<5; i++) {this["zj s"+i].n=i;

//每个图片MC下定义一个变量this["zjs"+i].onRo llO ver=function() {contro l=true;

//鼠标滑过图片时为真

};this["zj s"+i].onRollOut=function() {

contro l=false;

//鼠标移出图片时为假

};

}onEnte rFrame=functio n() {for(var k=0;k<5;k++) {this["z"+k]._x=this["zj s"+k]._x;

//说明文字的x坐标等于本应图片的x坐标this["z"+k]._xscale=this["zjs"+k]._xscale;this["z"+k]._yscale=this["zjs"+k]._yscale;

//说明文字的缩放比例与图片相同

}if(contro l) {mouse_in();

} else {mouse_out();

}

//条件真或假时调用函数

};

//坐标设置函数function setX() {for(var k=-2;k<3;k++) {this["zj s"+(k+2)]._x=myx+this["zj s"+2]._width*k;//以中间图片为准无间距排列

}for(var k=Numb er(temp 1)+1;k<5;k++) {

//temp1为缩放比例最大的图片下的变量值var mc 1=this["zjs"+k];var mc2=this["zj s"+(k-1)];

//此图片右边的其它图片mc1._x=mc2._x+(mc2._width+mc1._width)/2-1;//设置这些图片的x坐标 1为消除图片间的空隙}for(var k=Numb er(temp 1)-1;k>-1;k--) {var mc 1=this["zjs"+k];var mc2=this["zj s"+(k+1)];mc 1._x=mc2._x-(mc2._width+mc1._width)/2+1;}

//缩放比例最大的图片的左边的图片的x坐标设置myLin e();

//图片下方的线条

}

//比例缩放函数function move_scale(x,obj) {speed=(x-obj._xscale)*.65+speed*0.6;

obj._xscale+=speed;obj._yscale+=speed;

//缓冲公式 x为图片的缩放比例 obj为MC}

//鼠标滑过图片时 图片的缩放、 x坐标设置函数function mouse_in() {for(var i=0; i<5; i++) {var mc=this["zjs"+i];

//获得实例名if(mc.hitTe st(_xmo use,_ymouse, true)) {move_s cale(180,mc);

//如果鼠标位于图片的上方 图片放大1.8倍te mp 1=mc.n;

//把此图片下的变量赋给变量te mp 1

} else if(Math.abs(mc.n-temp1)==1) {move_scale(140,mc);

//两侧的图片比例放大1.4倍

} else {move_sc ale(100,mc);

//其它的图片为原始大小

}

}setX();

//设置图片的x坐标

}

//鼠标移出图片时 图片的缩放、 x坐标设置函数function mous e_out() {for(var i=0; i<5; i++) {move_scale(100, this["zj s"+i]);

//缩放比例为1恢复原始大小

}setX();

//坐标复原

}

//线条函数function myLine() {createEmp tyMovieC lip("line", 1);

//创建一个空影片w ith(line) {lineS tyle(0.1,0xff9933, 100);moveTo(zj s0._x-zj s0._width/2,zj s0._y+10);lineTo(zjs4._x+zj s4._width/2,zjs4._y+10);

//图片下方水平的直线moveTo(zjs0._x-zjs0._width/2,zjs0._y+5);lineTo(zj s0._x-zjs0._width/2,zjs0._y+15);

//右边垂直的直线moveTo(zjs4._x+zjs4._width/2,zjs4._y+5);lineTo(zjs4._x+zj s4._width/2,zjs4._y+15);

//左边垂直的直线

}

}

按CTRL+ENTER测试本例制作完成。掌握原理后加上好的创意相信你能做出更好的特效。

-

资料引用:http://www.kno wsky.co m/340840.html

Virmach 3.23美元可用6个月的VPS主机

Virmach 商家算是比较久且一直在低价便宜VPS方案中玩的不亦乐乎的商家,有很多同时期的商家纷纷关闭转让,也有的转型到中高端用户。而前一段时间也有分享过一次Virmach商家推出所谓的一次性便宜VPS主机,比如很低的价格半年时间,时间到服务器也就关闭。这不今天又看到商家有提供这样的产品。这次的活动产品包括圣何塞和水牛城两个机房,为期六个月,一次性付费用完将会取消,就这么特别的产品,适合短期玩玩...

TMThosting:VPS月付55折起,独立服务器9折,西雅图机房,支持支付宝

TMThosting发布了今年黑色星期五的促销活动,即日起到12月6日,VPS主机最低55折起,独立服务器9折起,开设在西雅图机房。这是一家成立于2018年的国外主机商,主要提供VPS和独立服务器租用业务,数据中心包括美国西雅图和达拉斯,其中VPS基于KVM架构,都有提供免费的DDoS保护,支持选择Windows或者Linux操作系统。Budget HDD系列架构CPU内存硬盘流量系统价格单核51...

ProfitServer$34.56/年,西班牙vps、荷兰vps、德国vps/不限制流量/支持自定义ISO

profitserver怎么样?profitserver是一家成立于2003的主机商家,是ITC控股的一个部门,主要经营的产品域名、SSL证书、虚拟主机、VPS和独立服务器,机房有俄罗斯、新加坡、荷兰、美国、保加利亚,VPS采用的是KVM虚拟架构,硬盘采用纯SSD,而且最大的优势是不限制流量,大公司运营,机器比较稳定,数据中心众多。此次ProfitServer正在对德国VPS(法兰克福)、西班牙v...

flash导航为你推荐
vista系统重装怎样重装vista系统公章制作word里如何制作公章?显卡温度多少正常电脑显卡温度多少正常?godaddyGodaddy域名怎么接受mate8价格华为mate8什么时候会降价宕机宕机是什么意思分词技术搜索引擎采用的是什么技术?网站优化方案网站优化方案如何写?php购物车PHP中用json实现购物车功能,怎么实现微信怎么看聊天记录怎样查找一个人的微信聊天记录
高防服务器租用 提供香港vps 名片模板psd parseerror 申请个人网页 linux空间 linux服务器维护 天翼云盘 东莞服务器 双12 韩国代理ip 镇江高防 腾讯云平台 apache启动失败 globalsign vim 海尔t68g 隐士ddos 电脑主机打不开 企业私有云存储 更多