2009-02-04 33 views
1

我有兩頁Flash影片的頁面。當一個(內容應用程序)達到特定狀態時(即用戶現在登錄),我想完全刷新另一個(菜單)以反映用戶會話的新整體狀態(即用戶已登錄現在包括一個「註銷」項目)。狀態實際上保持在服務器端,所以不需要詳細的通信,只需要一個通用的「更新自己」命令。一個Flash影片重新加載/倒帶/刷新另一個最簡單的方法是什麼?

看來我可以通過設置LocalConnection並將命令從第一部電影發送到第二部電影來做到這一點,但這看起來像是矯枉過正。

有沒有一種簡單的方法讓第一部電影重新加載/刷新/倒帶第二部電影?

回答

3

LocalConnection,特別是因爲您在頁面上下文中同時運行兩個SWF,實際上聽起來像是一種相當直接的方式。另一種方法是使用ExternalInterface將SWF與JavaScript連接起來,但這可能比實現LocalConnection更加複雜且容易出錯,並且可能也不太安全,具體取決於應用程序的細節。

除了直接通過LocalConnection或ExternalInterface發送消息之外,唯一想到的其他選項將涉及第二個SWF(菜單)的某種輪詢 - 輪詢瀏覽器會話/ cookie值(並相應地更新其狀態),輪詢某些JavaScript變量的更改,輪詢SharedObject值等。

實際上,現在我想起來了,SharedObject實際上可能是一種很好的方法。我沒有親自使用它,所以我沒有任何代碼可以共享,但從文檔看來,它非常適合該任務,並且可能比LocalConnection或ExternalInterface更合適,因爲它使兩個SWF更少緊密耦合。

+0

非常有幫助的建議...謝謝! – Eric 2009-02-04 22:32:15

相關問題