0

这在标题中很难解释......首先,这是我在 Actionscript 中的代码:

var digitalGallery:Loader = new Loader();
digitalGallery.x = 730
digitalGallery.y = 210
digitalGallery.load(new URLRequest("images/nair_evanescentautumn.png"));
addChild(digitalGallery);

function dgtlLatest(event:MouseEvent):void {
 if(event.target == new_thumb1) {
    digitalGallery.load(new URLRequest("images/iilu_evanescantautumn.png"));
 }
 else if(event.target == new_thumb2) {
    digitalGallery.load(new URLRequest("images/daem_evanescantautumn.png"));
 }
 else if(event.target == new_thumb3) {
    digitalGallery.load(new URLRequest("images/moon_evanescantautumn.png"));
 }
 else if(event.target == new_thumb4) {
    digitalGallery.load(new URLRequest("images/dael_evanescantautumn.png"));
 }
}

function dgtlGalery(event:MouseEvent):void {
 if(event.target == gal_thumb1) {
    digitalGallery.load(new URLRequest("images/kryo_evanescantautumn.png"));
 }
 else if(event.target == gal_thumb2) {
    digitalGallery.load(new URLRequest("images/nair_evanescantautumn.png"));
 }
 else if(event.target == gal_thumb3) {
    digitalGallery.load(new URLRequest("images/lite_evanescantautumn.png"));
 }
 else if(event.target == gal_thumb4) {
    digitalGallery.load(new URLRequest("images/oasi_evanescantautumn.png"));
 }
}

new_thumb1.addEventListener(MouseEvent.CLICK,dgtlLatest);
new_thumb2.addEventListener(MouseEvent.CLICK,dgtlLatest);
new_thumb3.addEventListener(MouseEvent.CLICK,dgtlLatest);
new_thumb4.addEventListener(MouseEvent.CLICK,dgtlLatest);

gal_thumb1.addEventListener(MouseEvent.CLICK,dgtlGalery);
gal_thumb2.addEventListener(MouseEvent.CLICK,dgtlGalery);
gal_thumb3.addEventListener(MouseEvent.CLICK,dgtlGalery);
gal_thumb4.addEventListener(MouseEvent.CLICK,dgtlGalery);

此脚本用于 Flash 中的加载程序图像库,作为类分配的一部分。发生的情况是,在 Flash 中,当我打开 swf 文件时,初始图像 (images/nair_evanescentautumn.png) 将正常加载。但是,单击任何缩略图(包括完全相同的 images/nair_evanescentautumn.png)将导致错误提示找不到文件。

我无法弄清楚它为什么会这样做......我已经对其进行了测试。单击每个缩略图确实会转到两个单独功能中的正确位置。所有所说的全尺寸图像链接都在文件夹 images/ 中,替换初始加载器图像将加载其他图像以代替默认图像。但是,即使一切正常,单击任何缩略图仍会导致找不到 URL。

这简直快把我逼疯了……创建一个简单的画廊不会这么难。

不过,作业要在星期三交……我敢肯定我可以在课堂上问我的导师,但我更愿意在那之前完成它,除了发布这个我想不出别的办法。

非常感谢所有帮助...

编辑:

抱歉没有发布错误...

Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.

编辑2:

这是整个文件集的链接:

http://www.tsr-online.org/flash/index.swf

我的服务器不允许访问 /flash 文件夹索引,但我可以提供目录列表。

/flash 目录: /images(包含所有图像) /cmsn(包含missions.swf 子页面) index.swf home.swf blog.swf traditional.swf digital.swf photography.swf Commissions.swf

在有人问我为什么要把这种内容放到 Flash 站点之前,我不是——这只是为了课堂作业。我只是想弄清楚为什么我的图像没有正确加载,而我只在函数中执行与在其他页面上完全相同的操作。

值得注意的是,commissions.swf 具有完全相同的功能,只是加载了 swf 文件,并且运行良好。家庭、传统、数字和摄影都有图片库,并且都有相同的问题(我只引用了一页,因为如果我能修复一页,我应该能够修复所有这些)。

至于艺术品,都是我未婚夫的。网站设计是为她构建的,我在这个项目中使用了网站设计,因为我不想构建一个全新的界面设计。由于该项目还需要一个画廊,我觉得这个界面可以正常工作。

4

3 回答 3

1

您的代码中有拼写错误。这就是问题的全部。来自您自己的代码的示例:

 else if(event.target == new_thumb2) {
    digitalGallery.load(new URLRequest("images/daem_evanescantautumn.png"));
 }

事实上,拼写是:

http://www.tsr-online.org/flash/images/daem_evanescentautumn.png

请注意,当它应该是“vanesc e ntautumn.png”时,确切的问题是“vanesc a ntautumn.png” 。

修复上面代码中的拼写,一切都应该很好。

于 2011-03-22T17:23:47.690 回答
0

由于奇怪的限制,我无法对您的帖子发表评论,所以我必须写一个答案(这是给您的一个问题):您为什么要尝试两次加载相同的图像?

于 2011-03-22T07:42:14.917 回答
0

无论如何,你有点绕道而行 - 试试这个:

var digitalGallery:Loader;

var thumbs:Array = ['new_thumb1',
                'new_thumb2',
                'new_thumb3',
                'new_thumb4',
                'gal_thumb1',
                'gal_thumb2',
                'gal_thumb3',
                'gal_thumb4']

var images:Array = ['iilu_evanescantautumn',
                'daem_evanescantautumn',
                'moon_evanescantautumn',
                'dael_evanescantautumn',
                'kryo_evanescantautumn',
                'nair_evanescantautumn',
                'lite_evanescantautumn',
                'oasi_evanescantautumn']

setupThumbs()

function setupThumbs(){
    for (var i=0; i<thumbs.length; i++){
        var thumb = this.getChildByName(thumbs[i])
        thumb.id = i
        thumb.addEventListener(MouseEvent.CLICK, loadImage);
    }
}

function loadImage(event:MouseEvent){
    var id = event.currentTarget.id
    digitalGallery = new Loader();
    digitalGallery.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
    digitalGallery.load(new URLRequest("images/"+images[id]+".png"));
}

function loadComplete(event:Event):void {
    trace("Complete");
    addChild(digitalGallery)
    digitalGallery.x = 730;
    digitalGallery.y = 210;
}
于 2011-03-22T13:14:05.160 回答