Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery flash外部接口_Javascript_Jquery_Flash_Externalinterface - Fatal编程技术网

Javascript jquery flash外部接口

Javascript jquery flash外部接口,javascript,jquery,flash,externalinterface,Javascript,Jquery,Flash,Externalinterface,我现在是一个安静的绝望者 我正试图像这里的许多其他人一样,让外部接口与我的页面一起工作。 无论我做什么,也不管我如何以正确的方式修改代码,我总是从firefox或chrome获得“hasnotmethod”报告 我试图通过jQuery在HTML中使用一个“play”链接触发Flash中的play函数。我不明白,出了什么问题 Flash CS6中的AS3.0(播放声音文件-Flash内部无问题,播放良好): Javascript(jQuery): 和HTML: <object classid

我现在是一个安静的绝望者

我正试图像这里的许多其他人一样,让外部接口与我的页面一起工作。 无论我做什么,也不管我如何以正确的方式修改代码,我总是从firefox或chrome获得“hasnotmethod”报告

我试图通过jQuery在HTML中使用一个“play”链接触发Flash中的play函数。我不明白,出了什么问题

Flash CS6中的AS3.0(播放声音文件-Flash内部无问题,播放良好):

Javascript(jQuery):

和HTML:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="350" height="30"     id="ASPlayer" title="Player">
  <param name="movie" value="../_flash/TEST -ExternalInterface-.swf">
  <param name="quality" value="high">
  <param name="wmode" value="opaque">
  <param name="swfversion" value="11.0.0.0">
  <param name="expressinstall" value="../_flash/expressInstall.swf">
  <param name="allowScriptAccess" value="always" />
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="../_flash/TEST -ExternalInterface-.swf" width="350" height="30" id="ASPlayer" title="Player">
    <!--<![endif]-->
    <param name="quality" value="high">
    <param name="wmode" value="opaque">
    <param name="swfversion" value="11.0.0.0">
    <param name="expressinstall" value="../_flash/expressInstall.swf">
    <param name="allowScriptAccess" value="always" />
    <!-- -->
    <embed src="../_flash/TEST -ExternalInterface-.swf" width="350" height="30" name="ASPlayer" quality="high" wmode="opaque" >
    <!-- -->
    <div>
      <p>Content on this page requires a newer version of Adobe Flash Player.</p>
      <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" width="112" height="33" /></a></p>
    </div>
    <!--[if !IE]>-->
  </object>
  <!--<![endif]-->
</object>
<p><a href="#" id="play">play</a></p>
</body>
<script type="text/javascript" src="TEST.js"></script>
</html>

此页面上的内容需要更新版本的Adobe Flash Player

我认为这可能是一个DOM加载顺序的问题,我尝试了很多组合,以何种顺序调用函数或在文档中的何处放置文件,但也没有成功

我也检查了其他用户关于这个问题的大多数条目,并尝试了它们,但仍然没有成功! 我很感激任何想法或提示:)

来自德国柏林的祝福

  • 确保您的脚本被拉入页面,检查的一种方法是使用Chrome Debugger/FireFox Firebug中的“sources”选项卡并搜索文件

  • 请确保在包含jQuery之后才包含脚本,因为它完全依赖于jQuery

  • 确保只包含一个jQuery库。包含多个版本可能会导致问题

  • 如果有其他库正在重写
    $
    ,那么您的代码将无法工作,因为
    $
    不再是
    jQuery
    的别名。您可以使用
    jQuery.noConflict()
    避免与页面上使用相同变量的其他库发生冲突
    $


  • 谢谢你的快速回答!1.我的脚本就在那里,当我在jQuery函数中放入一个警报时,它会弹出。2.脚本包含在页面底部。3.页面顶部只包含一个jQuery库“jQuery.1.8.3.min.js”。4.没有别的图书馆。也许还有其他想法(希望如此)?谢谢Dasun的努力!我现在使用swfObject让它工作!但我仍然想知道,为什么它不能与“老派”的实现一起工作。。。!
    $(document).ready(function() {
      $('#play').click(function() {
        // var flash = document.getElementById("ASPlayer"); // tried as well - no luck
        var flash = $('#ASPlayer').get(0)
        flash.playMusicJS();
        alert("TEST");
      });
    });
    
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="350" height="30"     id="ASPlayer" title="Player">
      <param name="movie" value="../_flash/TEST -ExternalInterface-.swf">
      <param name="quality" value="high">
      <param name="wmode" value="opaque">
      <param name="swfversion" value="11.0.0.0">
      <param name="expressinstall" value="../_flash/expressInstall.swf">
      <param name="allowScriptAccess" value="always" />
      <!--[if !IE]>-->
      <object type="application/x-shockwave-flash" data="../_flash/TEST -ExternalInterface-.swf" width="350" height="30" id="ASPlayer" title="Player">
        <!--<![endif]-->
        <param name="quality" value="high">
        <param name="wmode" value="opaque">
        <param name="swfversion" value="11.0.0.0">
        <param name="expressinstall" value="../_flash/expressInstall.swf">
        <param name="allowScriptAccess" value="always" />
        <!-- -->
        <embed src="../_flash/TEST -ExternalInterface-.swf" width="350" height="30" name="ASPlayer" quality="high" wmode="opaque" >
        <!-- -->
        <div>
          <p>Content on this page requires a newer version of Adobe Flash Player.</p>
          <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" width="112" height="33" /></a></p>
        </div>
        <!--[if !IE]>-->
      </object>
      <!--<![endif]-->
    </object>
    <p><a href="#" id="play">play</a></p>
    </body>
    <script type="text/javascript" src="TEST.js"></script>
    </html>