2011-07-16 23 views
0

設置HTML控件的.location屬性時,可以將其設置爲無效的URL,而不會出現錯誤。如何確定位置更改是否導致加載某個HTML,或者URL是否爲404?如何檢測AIR HTML控件的無效URL?

 <mx:HTML width="100%" 
       height="100%" 
       complete="Complete(event);" 
       location="http://qqq.xxx35627396.zzz" 
       id="Ghost"/> 

從上面顯示的假冒位置沒有產生錯誤。

如何檢測HTML控件上的IOError事件?

在此先感謝。

回答

0

現在,我更好地理解了這個問題,您將要看看html控件中的HTMLLoader對象,可能更具體地說,是loaderInfo屬性。我知道編譯器認爲它不存在,但是它是可以訪問的。

你將要附加一些事件。下面是派出由的LoaderInfo事​​件:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/LoaderInfo.html

這包括

flash.events.HTTPStatusEvent.HTTP_STATUS 
flash.events.IOErrorEvent.IO_ERROR 

以及

flash.events.Event.OPEN 
flash.events.ProgressEvent.PROGRESS 

現在,這麼說,HTMLLoader對象是玩家,所以你的一部分沒有機會檢查那裏發生的事情,或者很容易分類。因此,您可能會遇到以下需要解決的問題:

  1. 何時附加偵聽器。它看起來像只有一個HTML加載器控制有史以來創建,所以至少你只需要做一次(而不是創建一個新的一個附加事件,當loc更改等)

  2. 您可能無法獲得http_status或io_error事件無效。在這種情況下,您應該嗅探開放和進度,如果它們在X時間後沒有更新,則通知用戶該地址無效或出現網絡錯誤。

讓我知道如何去:)

+0

我想知道,如果它不加載,雖然... – Joshua

+0

如果我進入一個完全無效的URL,比如一個在的問題,它從不觸發完整的事件 - 問題是關於如何識別IOError事件。 – Joshua

+0

我現在明白,我會盡快爲您更新問題。 – Nate