快速业务通道

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

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-10
tribute(fullAtt)));
这个是响应缩略图点击事件,当点击后先去掉先前载入的大图,然后再去载入缩略图对应的大图。
其实也不难,不是吗?

再拉看一下完整的代码

package interactive.gallery
{
    import flash.display.*;
    import flash.events.*;
    import fl.transitions.*;
    import fl.transitions.easing.*;
    import flash.filters.*;
    import flash.net.*;
    public class ImageGallery extends MovieClip
    {
        var xml:XML;
        var xmlList:XMLList;
        var xmlLoader:URLLoader = new URLLoader();
        var container:MovieClip = new MovieClip();
        var imageLoader:Loader;
        var segments:Number;
        var currentSegment:int;
        var fullLoader:Loader = new Loader();
        var xmlPath:String;
        var thumbAtt:String;
        var fullAtt:String
        public function ImageGallery(path:String,thumb:String, full:String)
        {
            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 xmlLoaded(event:Event):void
        {
            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);
            }
        }
        function changeThumb(event:MouseEvent):void
        {
            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;
            }
        }
        function showPicture(event:MouseEvent):void
        {
            fullLoader.unload();
            fullLoader.load(new URLRequest(xmlList[currentSegment].attribute(fullAtt)));
        }
    }
}

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号