flash與js通訊方法
2020-07-27 13:09:39
供稿:網(wǎng)友
今天主要學(xué)習(xí)一下js與flash是如何通訊滴。
1、先學(xué)習(xí)一下
getURL(url, window, variables)
使用 getURL 語(yǔ)句,可以讓指定的瀏覽器窗口,轉(zhuǎn)向顯示指定的URL地址。參數(shù)(url)指定要顯示W(wǎng)EB頁(yè)面文檔的 URL 地址。參數(shù)(window)指定要要顯示W(wǎng)EB頁(yè)面文檔的瀏覽器窗口,它可以是指定為自定義的窗口名稱(chēng),也可以
如果想讓它執(zhí)行調(diào)用js函數(shù)執(zhí)行,那么可以這樣
on (release) {
getURL(/"JavaScript:alert('hello,world')/");
}
如果調(diào)用自定義的函數(shù)
on (release) {
getURL(/"JavaScript:aiqi('test')/");
}
那么html頁(yè)面里要定義這個(gè)函數(shù),比如
function aiqi(s){
alert(s);
}
這樣就可以實(shí)現(xiàn)簡(jiǎn)單的flash與js通訊
那么如何讓js來(lái)控制flash呢。
SetVariable()函數(shù)
document.getElemenyById(/"js/").SetVariable(/"myvar/", /"asdfasdfasdf/");
js為html中swf文件的id
如何用javascript來(lái)調(diào)用flash中函數(shù)叱。
直接的方法應(yīng)該是米有。
可以模擬一下。在flash中設(shè)一個(gè)變量,javascript控制改變這個(gè)變量的值,flash一檢測(cè)到此變
量值改變,變執(zhí)行函數(shù);
flash
--------------
var stat=0;
setInterval(test,300){
if (stat==1) doFlash();
}
function doFlash(){
}
javascript
--------------------
tt.SetVariable(/"stat/",1);
這個(gè)例子,我想已經(jīng)實(shí)現(xiàn)了js與flash的交互了。
講解一下。其實(shí)很簡(jiǎn)單。
首先在html文件里定義一個(gè)函數(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)");
}
通過(guò)這兩個(gè)按紐,傳遞參數(shù)給js的aiqi()函數(shù),
aiqi()函數(shù)動(dòng)態(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檢測(cè)到stat值變化時(shí)調(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)");
}