Air中讀取JavaScript的方法

來源:互聯網
上載者:User

標籤:

最近項目中用到了Air讀取JS檔案的需求,研究了一下,給大家分享下。

Air中提供HTMLLoader 類,可以讀取Html檔案中的js方法,當你把Html載入進來的時候,就可以通過HTMLLoader擷取js檔案中提供的屬性以及方法,

具體操作如下。

寫AS檔案

private var html:HTMLLoader = new HTMLLoader(); private var urlReq:URLRequest = new URLRequest("assets/test.html"); private function startLoadJS():void{  html.addEventListener(Event.COMPLETE, loadComplete);   html.load(urlReq); }private function loadComplete(e:Event):void{   trace(html.window.bbq);  trace(html.window.transToDB("一條彎彎的河"));}

再寫一個HTML檔案放置在aeests目錄下,檔案中可以只含也可以包含JS代碼

<script>     var bbq = "O,THANK YOU"    function transToDB(str){        return "哥哥面前"+str;    }</script>

運行結果:

“O,THANK YOU“"哥哥面前一條彎彎的河”

當我嘗試把test.html修改名稱為test.js或者其它副檔名,就無法實現

官方解釋:在案頭電腦上(在案頭和擴充的案頭設定檔中),HTMLLoader 類使用內部 AIR WebKit 引擎。

其可用的功能和呈現外觀與 StageWebView 類相同,並且在 ActionScript 和 javascript 之間實現了緊密整合和指令碼橋接。

由於 StageWebView 類使用 Flash Player 外掛程式提供的系統 web 控制項,因此強烈建議不要同時使用 StageWebView 和 HTMLLoader 執行個體,否則會發生未定義的行為,從而可能使應用程式終止運行。

可見,想讀取js內方法,只能支援副檔名為Html。

 

Air中讀取JavaScript的方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.