无法使用JS在Flash中使用ExternalInterface.addCallBack

时间:2017-02-12 07:19:34

标签: javascript html flash

我是flash的新手,我正在尝试使用javascript与actionscript交互。

我的应用程序的.mxml代码如下:

     <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
                creationComplete="initSelben(this)"
                xmlns:a="*"
                >

    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            import mx.controls.Alert;
            import com.flexspy.FlexSpy;

            import Fruit;

            private var numClicks:int = 0;

            private function initSelben(app:Object):void {
                SeleniumFlexAPI.init(app);

                ExternalInterface.addCallback("myFlexFunction",myFunc);
            }

            public function myFunc(s:String):void {
                Alert.show('title is :' + s);
            }

和myHTML和Javascript函数看起来像:

     !--  custom Script -->
     <script language="javascript">

     function callApp() {

     var title = document.getElementById("title").innerHTML;


     document.getElementById("destination").innerHTML = title;

     var AddCallbackExample =    document['selben'].myFlexFunction(title);

     document.getElementById("destination2").innerHTML = AddCallbackExample;
     }

      </script>

    <body>

    <div>
    <p id="title">My demo app</p>
    <button id="demo" onclick="callApp()">Click me</button>

    <p id="destination"></p>
     <p id="destination2"></p>
  </div>

     <noscript>
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
            id="${application}" width="${width}" height="${height}"
            codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
            <param name="movie" value="${swf}.swf" />
            <param name="quality" value="high" />
            <param name="bgcolor" value="${bgcolor}" />
            <param name="allowScriptAccess" value="sameDomain" />
            <embed src="${swf}.swf" quality="high" bgcolor="${bgcolor}"
                width="${width}" height="${height}" name="${application}" align="middle"
                play="true"
                loop="false"
                quality="high"
                allowScriptAccess="sameDomain"
                type="application/x-shockwave-flash"
                pluginspage="http://www.adobe.com/go/getflashplayer">
            </embed>
    </object>
    </noscript>


    </body>

我的申请名称是“selben”。

有人可以帮忙吗? ExternalInterface.call也没有工作。

0 个答案:

没有答案