2 回答

TA貢獻(xiàn)1811條經(jīng)驗 獲得超5個贊
js與flash是如何通訊滴。
1、先學(xué)習(xí)一下
getURL(url, window, variables)
使用 getURL 語句,可以讓指定的瀏覽器窗口,轉(zhuǎn)向顯示指定的URL地址。參數(shù)(url)指定要顯示W(wǎng)EB頁面文檔的 URL 地址。參數(shù)(window)指定要要顯示W(wǎng)EB頁面文檔的瀏覽器窗口,它可以是指定為自定義的窗口名稱,也可以
如果想讓它執(zhí)行調(diào)用js函數(shù)執(zhí)行,那么可以這樣
on (release) {
getURL(\"JavaScript:alert('hello,world')\");
}
如果調(diào)用自定義的函數(shù)
on (release) {
getURL(\"JavaScript:aiqi('test')\");
}
那么html頁面里要定義這個函數(shù),比如
function aiqi(s){
alert(s);
}
這樣就可以實現(xiàn)簡單的flash與js通訊
那么如何讓js來控制flash呢。
SetVariable()函數(shù)
document.getElemenyById(\"js\").SetVariable(\"myvar\", \"asdfasdfasdf\");
js為html中swf文件的id
如何用javascript來調(diào)用flash中函數(shù)叱。
直接的方法應(yīng)該是米有。
可以模擬一下。在flash中設(shè)一個變量,javascript控制改變這個變量的值,flash一檢測到此變
量值改變,變執(zhí)行函數(shù);
flash
--------------
var stat=0;
setInterval(test,300){
if (stat==1) doFlash();
}
function doFlash(){
}
javascript
--------------------
tt.SetVariable(\"stat\",1);
這個例子,我想已經(jīng)實現(xiàn)了js與flash的交互了。
講解一下。其實很簡單。
首先在html文件里定義一個函數(shù)
function aiqi(s){
//給flash賦值
js.SetVariable("stat",s);
}
注js為swf文件的id
SWF文件里有兩按紐它們的AS分別為
on (release) {
getURL("javascript:aiqi(1)");
}
on (release) {
getURL("javascript:aiqi(0)");
}
通過這兩個按紐,傳遞參數(shù)給js的aiqi()函數(shù),
aiqi()函數(shù)動態(tài)改變flash中stat中值。
swf中AS為
var stat=0;
var c=0;
setInterval(function(){
if (stat==1)
doFlash();
},1000)
function doFlash(){
var1=c++;
}
當(dāng)flash檢測到stat值變化時調(diào)用doFlash().
// [Action in Frame 1]
function doFlash()
{
var1 = c++;
} // End of the function
var stat = 0;
var c = 0;
setInterval(function ()
{
if (stat == 1)
{
doFlash();
} // end if
}, 1000);
on (release)
{
getURL("javascript:aiqi(1)");
}
on (release)
{
getURL("javascript:aiqi(0)");
}

TA貢獻(xiàn)1815條經(jīng)驗 獲得超10個贊
漏了js里的引號,你的參數(shù)是字符串,應(yīng)該
getURL("javascript:cloupload(\"" + id + "\")");
或者
getURL("javascript:cloupload('" + id + "')");
添加回答
舉報