該documentation for Loader in the Actionscript 3.0 reference似乎自相矛盾。在文件完成下載但加載的影片剪輯的方法和屬性尚不可用使用Loader時完整和init事件之間的關係是什麼?
- 的
complete
事件被調度,但。
按照第一點,complete
事件意味着文件已經完成下載。我們正在加載一個swf
文件並使用complete
事件來表明它已被加載。但是我們發現,在某些情況下,我們正在加載的資源不適用於我們。文檔中的這一行對我們來說很重要,因爲我們爲什麼會遇到這個問題,並且我們打算改用init
事件。
但隨後的文件接着說:
- 的
init
事件的屬性和加載的SWF文件的方法之後分派的訪問,這樣你就可以開始操作加載的SWF文件。此事件在complete
處理程序之前分派。在流式SWF文件中,init
事件可能比完整事件發生得早得多。對於大多數用途,請使用init
處理程序。
這也是情理之中的我們,除了上面說的init
事件在complete
處理程序之前分派。這對我們來說沒有意義,因爲這似乎與它自相矛盾。如果在加載的影片剪輯的方法和屬性可用之前調度了complete
事件,並且在加載的SWF文件的屬性和方法可訪問後調度了init
事件,那麼init
事件如何在complete
事件之前分派?
我很樂意聽到經常與這些事件合作的人,並且可以澄清關於這一點的文檔。下面是我對這個文檔和過程中的具體問題:
- 是什麼
complete
和init
事件的意義有什麼區別? - 文檔在這裏使用「event」和「handler」這個詞是重要的嗎?即「這個事件在
complete
處理程序之前被分派」。這是否告訴我們暫緩處理complete
事件,直到init
事件也被調度?
該文檔還明確指出:「對於大多數用途,請使用init
處理程序。」所以至少我們期望將我們的軟件從使用complete
改爲使用init
來代替。我們可能會等待兩者,特別是如果我們在測試中看到它們以不同的順序出現的話。但我仍然在這裏尋找一些理智。希望有人能提供這個?
這很奇怪,很好發現。我認爲'complete'描述中的「but ...」只是一個錯誤,因爲我相當肯定我從來沒有在'init'之前看到'完全的'fire,並且事件本身的描述(在Loader.load()部分)更清晰。 –