2014-09-21 66 views
0

我非常困惑,我花了一整天的時間去做一些應該很容易的事情。我只想從JavaScript調用Flash函數 - 就是這樣。無法通過JavaScript調用Flash AS3函數

ActionScript代碼:

import flash.display.Loader; 
import flash.net.URLRequest; 
import flash.net.URLLoader; 
import flash.events.Event; 
import flash.external.ExternalInterface; 
import flash.net.FileReference;    
import flash.events.IOErrorEvent; 
import flash.events.Event; 
import flash.system.Security; 

Security.allowDomain("*"); 
ExternalInterface.addCallback("test", test); 

function test() 
{ 
    ExternalInterface.call("alert", "Doesn't Work"); 
} 

的JavaScript/HTML

<h1>Test</h1> 
    <script> 
     function getFlashMovie(movieName) { 
      var isIE = navigator.appName.indexOf("Microsoft") != -1; 
      return (isIE) ? window[movieName] : document[movieName]; 
     } 
     function poc() { 
      getFlashMovie("Test").test(); 
     } 
    </script> 
    <button onclick="poc()">Click Me!</button> 

這不起作用,功能 '測試' 的對象不存在 '測試'

我想我'在這裏問一個最後的努力。這裏是我的活生生的例子: http://itsclassified.info/flash/Test.html

+0

使用'document.getElementById(「Test」)'來獲取對象的引用。 – BadFeelingAboutThis 2014-09-22 20:40:03

回答

0

這裏是給定頁面的一些JS代碼http://itsclassified.info/flash/Test.html

<object type="application/x-shockwave-flash" data="Test.swf" name="POC" width="1" height="1"> 
       <param name="movie" value="Test.swf" /> 
       <param name="quality" value="high" /> 
       <param name="bgcolor" value="#ffffff" /> 
       <param name="play" value="true" /> 
       <param name="loop" value="true" /> 
       <param name="wmode" value="window" /> 
       <param name="scale" value="showall" /> 
       <param name="menu" value="true" /> 
       <param name="devicefont" value="false" /> 
       <param name="salign" value="" /> 
       <param name="allowScriptAccess" value="always" /> 
      <!--<![endif]--> 
       <a href="http://www.adobe.com/go/getflash"> 
        <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> 
       </a> 
      <!--[if !IE]>--> 
      </object> 
      <!--<![endif]--> 

試圖改變

name="POC" 

name="Test" 

我有測試在鉻和IE11中,它的工作原理。