2010-07-22 24 views
0

我有一個flash文件,其中包含一個xml文件作爲flashvars。當我使用這個代碼時,它可以在每個瀏覽器中運行,但不能在IE 7或更高版本中運行。xml文件作爲SWF對象中的flashvars

OBJECT CLASSID = 「CLSID:D27CDB6E-AE6D-11CF-96B8-444553540000」 基本代碼=「http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6, 0,0,0「 WIDTH =」530「HEIGHT =」410「id =」usa_locator「ALIGN =」「> PARAM NAME = movie VALUE =」app_themes/theme1/usa_locator_demo.swf「> PARAM NAME = FlashVars VALUE =「app_themes/theme1/usa_locator.xml」> PARAM NAME = quality VALUE = high> param name =「wmode」value =「transparent」> PARAM NAME = bgcolor VALUE =#F5F5F5> EMBED src =「app_themes/theme1/usa_locator_demo.swf?xmlfile1 = app_themes/theme1/usa_locator.xml「quality = high wmode =」transparent「bgcolor =#F5F5F5 WIDTH =」530「HEIGHT =」41 0" NAME = 「usa_locator」 ALIGN = 「」 TYPE = 「應用程序/ x-衝擊波閃光」 PLUGINSPAGE = 「http://www.macromedia.com/go/getflashplayer」> EMBED> /OBJECT>

看了很多之後,SWFObject似乎是一個不錯的選擇。所有u需要做的是:

1-包含在報頭swfobject.js 2-創建flash對象的空div被包括

<div id="myContent"> 
    <p>Alternative content</p> 
</div> 

3-嵌入在通過JavaScript在div閃光:

swfobject.embedSWF(「app_themes/theme1/usa_locator_demo.swf」,「myContent」,「530」,「410」,「6」,false,** flashvars **);

我唯一的問題是:我不知道如何通過一個xml文件的url傳遞flashvars。在我看來,SWFObject不支持這一點。相反,你需要創建Flash變量列表作爲

VAR的flashvars = { 名1: 「你好」, 名2: 「世界」, NAME3: 「foobar的」 }; 並將該變量傳遞給javascript。我擁有的XML文件非常大,並且有許多變量,我不知道如何做到這一點。請幫忙。

我的XML文件是一樣的東西:

usa_map_locator> 配置> color_state_name> 0XFFFFFF color_state_name_over> 0XFFFFFF type_of_gradient> 1個 BACKGROUND_COLOR> 0XFFFFFF show_links> 0 light_effect> 1個 border_color> 0XFFFFFF 聲音> on /config>

map_data> state> id> 1 名>華盛頓 鏈接># 評論>地址: 電話: 電子郵件: /評論>
color_map> 0x7798BA color_map_over> 0x0054A6 幀> _top 圖像> photo.jpg /狀態> 狀態> id> 2 .....所有50個州

回答

0

你應該只需要做的是這樣的:

var flashvars = { xmlfile1: "app_themes/theme1/usa_locator.xml" } 

你通常會通過爲得到什麼(也就是Flash變數)是鍵/值參數的簡單列表,以同樣的精神,您將該列表轉換爲JavaScript中的鍵/值對象。