快速业务通道

通过实例学习Flash AS3.0——案例六

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-10

section1代码:

xmlPath = path;
thumbAtt = thumb;
fullAtt = full;
container.x = 25;
container.y = 25;
fullLoader.x = 200;
fullLoader.y = 25;
container.addEventListener(MouseEvent.MOUSE_MOVE, changeThumb);
container.addEventListener(MouseEvent.CLICK, showPicture);
xmlLoader.load(new URLRequest(xmlPath));
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
container.filters = [new DropShadowFilter()];
addChild(container);
addChild(fullLoader);

这段代码的功能就是在初始化类时,给一些以后会用到的变量赋值,因为这些变量是全局变量,所以后面的function都能用。
对container添加了监听事件,监听鼠标移动和点击。
然后载入xml文件,当xml载入完成后,执行xmlLoaded函数
然后对container应用了阴影滤镜,这个container就是将来我们要载入图片的mc。
然后将container和fullLaoder放到舞台上,fullLoader将来会载入大图。

section2

xml = XML(event.target.data);
xmlList = xml.children();
for (var i:int = 0; i < xmlList.length(); i++)
{
    imageLoader = new Loader();
    imageLoader.load(new URLRequest(xmlList[i].attribute(thumbAtt)));
    container.addChild(imageLoader);
}

当xml载入完成后就会执行这个函数,先是获取xml对象列表,然后获取xml的子元素。这个在前面的教程提及过。
遍历子元素,然后通过Loader载入图片,并将imageLoader添加到container里。

section3

segments = container.width / container.numChildren;
currentSegment = Math.floor(container.mouseX / segments);
if (currentSegment <= container.numChildren - 1)
{
    for (var j:int = 0; j < container.numChildren; j++)
    {
        container.getChildAt(j).visible = false;
    }
container.getChildAt(currentSegment).visible = true;
}

这个函数是响应鼠标在缩略图上移动的事件,有一个算法在里面。
将mc的宽除以载入的缩略图的数量,得到一个平均数。
然后将当前鼠标的x位移除以刚刚得到的平均数就得到了当前鼠标所在的图片(听着有点别扭)
然后先将所有container里的child隐藏起来,再显示当前的图片。

section4

fullLoader.unload();
fullLoader.load(new URLRequest(xmlList[currentSegment].at

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号