• flash调用js中的方法,让js传递变量给flash (兼容 IE & FF) (转)


    < DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>


    前几天发表了 将FlashVars写在JS函数中,实现与后台的实时变量更新,但是仅支持 IE,随后与 Luckyer 进行了交流,发现用 SetVariable 可以很方便的实现多浏览器兼容。举例如下。

    html 页中的 JavaScript 函数:
    function GetSwfUrl()
    {
    var pics1 = parseInt(Math.random()*5)+1;
    var pics2 = parseInt(Math.random()*5)+1;
    document.my_swfId.SetVariable("pic01Num", pics1);
    document.my_swfId.SetVariable("pic02Num", pics2);
    }

    说明:pic01Num 和 pic02Num 为 Flash 中定义的变量,以上函数将 JS 变量 pics1 和 pics1 分别赋值予 Flash 变量 pic01Num 和 pic02Num 。my_swfId 为 html 页中 swf 的 id .

    ***************

    在 Flash 中与 JS 的通信可以用传统的 getURL,Flash8 以后,可以用 ExternalInterface 。ExternalInterface 在功能上与 fscommand()、CallFrame() 和 CallLabel() 方法相似,但它更灵活、更通用。推荐对 JavaScript 和 ActionScript 之间的通讯使用 ExternalInterface 。

    getURL调用JS:
    getURL("javascript:GetSwfUrl()");

    ExternalInterface调用JS:
    import flash.external.ExternalInterface;//导入 ExternalInterface 类
    ExternalInterface.call("GetSwfUrl()");

    注意:如果要使用 ExternalInterface,当前帧必需要有 import flash.external.ExternalInterface; 或者 import flash.external.*;

    调用方法:

    例:

    flash.external.ExternalInterface.call("menu0", null);

    这样会调用js中的menu0的方法

  • 相关阅读:
    sscanf 函数
    hdu 1232 畅通工程 解题报告
    hdu 2048 神、上帝以及老天爷 解题报告
    hdu 2049 不容易系列之(4)——考新郎 解题报告
    hdu 2013 蟠桃记 解题报告
    hdu 2093 考试排名 解题报告
    分糖果 的解题报告
    hdu 2017 字符串统计 解题报告
    表的连接方式:NESTED LOOP、HASH JOIN、SORT MERGE JOIN【转】
    sort_area_size设置【转】
  • 原文地址:https://www.cnblogs.com/netcorner/p/2912001.html
Copyright © 2020-2023  润新知