溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flex與JavaScript中怎么實現交互中調用

發布時間:2021-08-13 11:59:37 來源:億速云 閱讀:246 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關Flex與JavaScript中怎么實現交互中調用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

一、在JavaScript中調用Flex方法

在Flex中可以用ExternalInterface來調用Flex的方法,途徑是通過在Flex應用可調用方法列表中添加指定的公用方法。在Flex應用中通過調用addCallback()可以把一個方法添加到此列表中。addCallback將一個ActionScript的方法注冊為一個JavaScript和VBScript可以調用的方法。

addCallback()函數的定義如下:

addCallback(function_name:String,closure:Function):void

function_name參數就是在Html頁面中腳本調用的方法名。closure參數是要調用的本地方法,這個參數可以是一個方法也可以是對象實例。

舉個例子:

<mx:Script> importflash.external.*;  publicfunctionmyFunc():Number{  return42;  }  publicfunctioninitApp():void{  ExternalInterface.addCallback("myFlexFunction",myFunc);  }  </mx:Script>

那么在Html頁面中,先獲得SWF對象的引用,也就是用<object.../>聲明的Swf的Id屬性,比如說是MyFlexApp。然后就可以用以下方式調用Flex中的方法。

<SCRIPTlanguageSCRIPTlanguage='JavaScript'charset='utf-8'> functioncallApp(){  varx=MyFlexApp.myFlexFunction();  alert(x);  }  </SCRIPT> <buttononclickbuttononclick="callApp()">CallApp</button>

二、Flex調用JavaScript

你可以調用Html頁面中的JavaScript,通過與JavaScript的交互,可以改變Style,調用遠程方法。還可以將數據傳遞給Html頁面,處理后再返回給Flex,完成這樣的功能主要有兩種方法:ExternalInterface()和navigateToUrl()。

在Flex中調用JavaScript最簡單的方法是使用ExternalInterface(),可以使用此API調用任意JavaScript,傳遞參數,獲得返回值,如果調用失敗,Flex拋出一個異常。
ExternalInterface封裝了對瀏覽器支持的檢查,可以用available屬性來查看。

ExternalInterface的使用非常簡單,語法如下:

flash.external.ExternalInterface.call(function_name:String[,arg1,...]):Object;

參數function_name是要調用的JavaScript的函數名,后面的參數是JavaScript需要的參數。

舉個例子說明如何Flex調用JavaScript函數

Flex應用中,添加如下方法:

<mx:Script> <?xmlversionxmlversion="1.0"encoding="iso-8859-1"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script> importflash.external.*;   publicfunctioncallWrapper():void{  varf:String="changeDocumentTitle";  varm:String=ExternalInterface.call(f,"NewTitle");  trace(m);  }  </mx:Script> <mx:Buttonlabelmx:Buttonlabel="ChangeDocumentTitle"click="callWrapper()"/> </mx:Application>

Html頁面中有如下函數定義:

<SCRIPTLANGUAGESCRIPTLANGUAGE="JavaScript"> functionchangeDocumentTitle(a){  window.document.title=a;  return"successful";  }  </SCRIPT>

看完上述內容,你們對Flex與JavaScript中怎么實現交互中調用有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女