2011-03-22 22 views
0

這是非常困難的標題來解釋。首先,這是我在ActionScript代碼:的Flash CS4裝載器類:圖像加載最初,但返回錯誤當加載新形象

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中的加載器圖像庫。發生什麼是在閃存中,當我打開swf文件時,初始圖像(images/nair_evanescentautumn.png)將加載正常。但是,單擊任何縮略圖(包括完全相同的圖像/ 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文件夾索引,但我可以給出目錄列表。

/閃光目錄: /圖像(包含所有圖像) /招商局(包含commissions.swf子頁) index.swf home.swf blog.swf traditional.swf digital.swf photography.swf commissions.swf

在有人問我爲什麼要把這種內容放入Flash網站之前,我不是 - 這只是一個班級任務。我只是想弄清楚爲什麼我的圖像沒有正確加載,因爲我只是在功能上完成與我在其他頁面上完全相同的功能。

值得注意的是,commissions.swf具有完全相同的功能,只需加載swf文件,而且它工作得很好。家,傳統,數字和攝影都有圖像庫,並且都有相同的問題(我只引用一頁,因爲如果我可以修復一個頁面,我應該能夠修復所有這些)。

至於藝術品,他們都是我的未婚夫。網站設計是爲她而設計的,我使用了這個項目的網站設計,因爲我不想建立一個全新的界面設計。由於該項目還需要一個畫廊,我覺得這個界面將工作得很好。

+0

你可以發佈你的所有項目文件的地方?這將是最好的情況,因爲我可以通過這種方式爲你調試它,而不是猜測任何我沒有看到的可能是原因的東西。 – 2011-03-22 11:52:38

+0

當發佈這些類型的問題時,請粘貼閃存給你的確切錯誤信息。示例「錯誤1015:Blah等等等等MyClass行51」。如果您看不到那麼多的nfo,請務必進入您的閃存IDE發佈設置,然後單擊「啓用調試」複選框。 – 2011-03-22 11:54:01

+0

是的,我忘了錯誤...我添加到第一篇文章,這裏也是: 錯誤#2044:未處理的IOErrorEvent :. text =錯誤#2035:URL未找到。 我會將有問題的文件上傳到服務器,並在第一篇文章中添加鏈接。無論如何,我明天必須這樣做。 – JaidynReiman 2011-03-22 16:06:41

回答

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 一個 ntautumn.png」 時,它應該是「vanesc e ntautumn.png。「

修正上面的代碼中的拼寫,一切都應該很好。

+0

顯然,我的複製粘貼工作不正常,那麼...因爲我複製了最初的「digitalGallery.load(新的URLRequest(」images/nair_evanescentautumn.png「));」幾次,並用它替換第二個,只是爲了確保它被正確設置。 呃... < - < 我會再試一次,稍後再回應。謝謝... – JaidynReiman 2011-03-22 18:31:17

+0

呃......現在我覺得自己像個白癡。雖然,死亡總是給我的問題....:P現在工作,謝謝。 – JaidynReiman 2011-03-22 18:49:23

+0

很高興聽到它的工作。不要覺得自己是個白癡,這種事情發生在最好的狀態。我已經花了好幾個小時把我的臉從桌子上猛烈衝過幾壺咖啡,就像這樣,所以不要擔心,不要讓任何人試圖讓你覺得它愚蠢,只要繼續按下。 :) – 2011-03-22 23:39:42

0

由於我無法對你的帖子發表評論,因爲我有一個奇怪的限制,我必須寫一個答案(這是一個問題給你):爲什麼你會嘗試加載相同的圖像兩次?

+0

兩次加載相同的圖像是無關緊要的,他不應該在加載相同資源兩次或更多次時收到他描述的性質錯誤。 – 2011-03-22 11:55:01

+0

當然,但是加載兩次是不必要的,首先刪除這些東西甚至可能會解決問題或導致對其發生原因的理解。無論如何,有關錯誤的更多信息會很好。 – 2011-03-22 12:33:55

+0

它沒有真正加載相同的圖像兩次。裝載程序是 - 否決 - 刪除它中的任何內容,然後裝入新的東西。它應該是一個畫廊;默認情況下出現一個圖像,然後您可以單擊縮略圖,圖像將被替換爲新圖像。然後,如果您單擊原始圖像的縮略圖,也會重新加載該圖像。 而且我已經嘗試切換代碼從重新加載第一個圖像重新加載當前幀...它仍然不能解決爲什麼其他圖像不加載的問題。 – JaidynReiman 2011-03-22 16:04:25

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; 
} 
+0

我想我可以做那樣的事情......但我並不太熱衷於ActionScript。並不是說我在編程方面不好 - 我發現它比設計方面容易得多。我設置它的方式是我被告知設置的方法之一。不幸的是,我的教師告訴我使用的另一種方法無效,或者... – JaidynReiman 2011-03-22 16:12:00