程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> flash與js通訊方法

flash與js通訊方法

編輯:關於ASP編程
今天主要學習一下js與flash是如何通訊滴。

1、先學習一下
getURL(url, window, variables)

使用 getURL 語句,可以讓指定的浏覽器窗口,轉向顯示指定的URL地址。參數(url)指定要顯示WEB頁面文檔的 URL 地址。參數(window)指定要要顯示WEB頁面文檔的浏覽器窗口,它可以是指定為自定義的窗口名稱,也可以

如果想讓它執行調用js函數執行,那麼可以這樣
on (release) {
  getURL(\"JavaScript:alert('hello,world')\");

}
如果調用自定義的函數
on (release) {
  getURL(\"JavaScript:aiqi('test')\");

}
那麼html頁面裡要定義這個函數,比如
function aiqi(s){
alert(s);
}

這樣就可以實現簡單的flash與js通訊

那麼如何讓js來控制flash呢。
SetVariable()函數
document.getElemenyById(\"js\").SetVariable(\"myvar\", \"asdfasdfasdf\");  

js為html中swf文件的id

如何用javascript來調用flash中函數叱。
直接的方法應該是米有。
可以模擬一下。在flash中設一個變量,javascript控制改變這個變量的值,flash一檢測到此變
量值改變,變執行函數;
flash     
 --------------   
 var   stat=0;   
 setInterval(test,300){   
         if   (stat==1)   doFlash();   
 }   
 function   doFlash(){   

 }   

 javascript   
 --------------------   
 tt.SetVariable(\"stat\",1); 

這個例子,我想已經實現了js與flash的交互了。
講解一下。其實很簡單。
首先在html文件裡定義一個函數
  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)");
}
通過這兩個按紐,傳遞參數給js的aiqi()函數,
aiqi()函數動態改變flash中stat中值。
swf中AS為
 var stat=0;
 var c=0;
 setInterval(function(){
         if   (stat==1)  
      doFlash();   
 },1000)  
 function   doFlash(){   
         var1=c++;   
 }   
當flash檢測到stat值變化時調用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)");
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved