javascript - 基于Flash的录音机/播放器应用程序对象将如何与网页中的JavaScript通信?

标签 javascript flash audio dom-events

我需要与Flash开发人员进行交流,以构建可以记录来自浏览器的音频的Flash记录器。除了Flash记录器需要做的所有事情之外,还需要能够:

  • 如果用户拒绝访问其麦克风或无法访问其麦克风以触发基于JavaScript的模态窗口并弹出一条消息,让用户知道无需访问其麦克风即可继续前进
  • 如果用户录制了声音,并且他们通过按停止按钮完成了录制,则隐藏的html输入字段将填充以秒为单位的录制长度。

  • 那么最好的方法是什么?我不确定如何在规范中与Flash Developer进行最佳沟通。

    我是否定义了上述两个事件中的任何一个发生时播放器需要触发的JavaScript自定义事件?

    我非常喜欢使用jQuery。

    最佳答案

    使用ExternalInterface在actionscript和javascript之间建立通信/回调。

    我建议使用SWFObject,因为它还会处理和ID /名称问题,这些问题可能会中断某些浏览器中的通信。

    var flashvars = {};
    var params = {};
    var attributes = { id: "ExternalInterfaceExample", name: "ExternalInterfaceExample" };
    
    swfobject.embedSWF("ExternalInterfaceExample.swf", "flashcontent", "550", "200", "8", "/path/to/expressinstall.swf", flashvars, params, attributes);
    
    function sendToFlash(text) {
      var swf = document.getElementById("ExternalInterfaceExample");
      swf.sendTextToFlash(text);
    }
    

    该示例来自链接的站点,请注意id和名称如何相同。查看demo

    关于javascript - 基于Flash的录音机/播放器应用程序对象将如何与网页中的JavaScript通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22414493/

    相关文章:

    javascript - 更改 jqGrid 的样式

    javascript - 在发送 ajax 请求之前显示确认信息

    javascript - 支持动态饼图的图形/图表?

    sql - 这个 SQLite 查询有什么问题?

    android - Android上的顶部麦克风和底部麦克风如何选择?

    ios - 如何在我的应用程序上显示歌词

    javascript - 我在 JavaScript 中执行 rot13 的哪里出错了?

    java - 列出 Red5 可用的流

    c++ - 将 MIDI 事件发送到独立采样器/合成器

    html - 将 swf 文件堆叠在一起