2012-03-23 57 views
0

是否有可能通過js(JavaScript)訪問和修改Flash內容,如果是,那麼,如何做到這一點?是否有可能通過js訪問和修改Flash內容

+1

你是什麼意思「修改」?碼?或電影的行爲? – Joseph 2012-03-23 06:25:28

+0

我想隱藏一些正在從另一臺服務器檢索到的Flash內容元素,這些服務器的訪問權限不在我手中。 – Krishna 2012-03-23 06:34:16

+2

你能在你的帖子中指出你所處的情況,你使用的資源以及任何相關的東西。過於模糊,人們只能回答和你的問題一樣模糊。如果你指出的情況下,人們可能會指出你在正確的方向,甚至張貼替代品。 – Joseph 2012-03-23 06:36:29

回答

0

可以用java腳本操作電影的狀態,即時通訊認爲你沒有權限訪問SWF(反編譯的fla),所以你不知道變量,MovieClips屬性和/或在這個SWF裏面有Actionscripts電影接受來自java的這樣的請求。

因此:他們能夠發送/檢索彼此之間的數據,但你必須允許swf電影內的這種行爲。

它與其他語言真的沒有什麼不同,它們之間的溝通必須得到雙方的允許。

1

執行此操作的正常方法是在Flash中定義一些函數,您可以從JavaScript調用函數,以及可以從Flash調用的JavaScript內部函數。 Adobe有這方面的文檔。只要搜索它。 (還有一個這樣的Java接口,它更復雜一點。)

但是,如果你想瘋了,你總是可以得到原始的二進制Flash數據,並修改它。 例如,您可以使用任何Flash文件,對其進行網址編碼,然後將data:application/x-shockwave-flash,放在它的前面,然後將該長字符串用作<object>標記的URL。 :)
接下來,您可以動態修改該URL,或使用JavaScript生成的數據將Flash對象動態添加到文檔中。
但是,我非常懷疑插件會在加載代碼時關心或注意您對相同URL的修改。並不知道這些多Flash對象將如何使用彼此...

但現在,這是有點沒有意義。由於SVG + CSS + JavaScript + <canvas> + WebGL可以讓你做到和一樣更多。 :)

相關問題