下面是一些在Flash和使用Javascript的HTML文件直接通信的示例,每個示例都有簡略的步驟
本文討論了3種基本的Flash/Javascript通信方式:
Javascript 到 Flash的通信----使用Flash播放器的javascript方法
Flash 到 Javascript的通信----使用Flash的fscommand
Flash 到 Flash的通信----------使用本地連接對象或綜合上2種技術
并不是所有的瀏覽器都很重視腳本.為了和Flash播放器通信,瀏覽器必須有內置的鉤子以便Flash播放器可以'監聽'.瀏覽器必須是下列的幾種:
Netscape Navigator 3.0-4.7x, 和 Netscape 6.2或更高
(Windows 95/98/NT/2000/XP 或 MacOS; 允許Java和LiveConnect)
Internet Explorer 3.0 或更高
(僅Windows 95/98/NT/2000/XP; 允許ActiveX)
Javascript到Flash的通信
這個例子演示了如何使用Flash的method把變量從HTML的input text 發送到該頁面中的Flash文件中.HTML input的數據通過Flash的SetVariable方法傳送到Flash文件中.
查看示例:示例
下載源文件: javascript_to_flash.zip(17k)
步驟:
Flash中
1.新建一個文件,保存為javascript_to_flash.fla
2.用文字工具在舞臺上創建一個文本域
3.選擇這個文本域,在屬性面板中,從下拉列表中選擇動態文本(Dynamic Text),在變量(variable)欄填上"myVar"
注意:最好的習慣是使用Instance,用myVar.text更改myVar的值.為了簡單起見和兼容Flash4和Flash5,我們使用的是變量名的形式.
4.保存文件
5.發布HTML文件和SWF文件
Dreamweaver中
下一步的工作轉移到Dreamweaver中了,當然也可以是其他的HTML編輯器
1.打開上一步發布的HTML文件
2.插入生成的SWF文件和OBJECT/EMBED標簽
(1) Insert>Media>Flash,并選擇這個Flash
(2) 切換到代碼視圖,我們需要修改被選中的<OBJECT>和<EMBED>標簽
(3) 在OBJECT標簽中,插入id="myFlash"
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/
flash/swflash.cab#version=5,0,0,0"
width=366 height=142 id="myFlash">
注意:如果你是粘貼復制代碼的話,確保刪除不必要的換行.否則可能會引起錯誤; id也可以在屬性面板里直接輸入
(4) 在EMBED標簽中,插入name="myFlash"和swLiveConnect="true",確保沒有使用id屬性!代碼應當是這樣子的:
<embed src="javascript_to_flash.swf" quality=high width=366 height=142
type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash"
name="myFlash" swLiveConnect="true">
</embed>
3.創建表單域
(1) 回到設計視圖
(2) 插入文本域(Insert> Form Object> Text Field),如果詢問是否添加表單域,選擇是