【问题标题】:JavaScript - shuffling audioJavaScript - 随机播放音频
【发布时间】:2011-10-18 08:33:41
【问题描述】:

我正在创建一个网页,该网页使用 JavaScript 来随机播放一系列音频文件问题及其匹配的拖放答案。我已经使用原生 HTML5 音频标签成功实现了这一点,但也有一个 IE 7/8 的后备部分,因为这些浏览器无法读取音频标签。此后备部分使用对象和参数标签周围的条件 cmets,如 at the end of this article here 所示。

它的工作原理是它确实在 IE 中随机播放,但它会显示我专门隐藏的丑陋的媒体播放器样式控件,因为此活动使用“播放声音”按钮而不是音频播放器控件。

如果有人需要查看代码的特定部分,请告诉我。

非常感谢!

【问题讨论】:

  • 哦...刚刚注意到另一个问题...后备 上的随机播放功能会杀死音频 - 即当您单击 IE 中的按钮时它不会播放.大佬们有什么建议吗?再次感谢:)
  • IE 声音和随机播放的问题在下面为有类似问题的人解决。

标签: javascript internet-explorer audio shuffle


【解决方案1】:

有两个想法(抱歉,我目前使用的是 Mac,所以在 IE 中测试不是一个好选择):

  1. 我看到了您试图隐藏控件的参数,但您是否也尝试将 css 应用于对象标签或包裹它的容器?可能就像给包装器 div 设置 display: nonevisibility: hidden 一样简单。

  2. 这不是对您问题的直接回答,但您是否调查过任何插件,例如SoundManager 2?它使用带有 Flash 后备的 HTML5 音频;我以前用过它并取得了成功。显然它需要在旧版浏览器上使用 Flash,但如果这不是问题,那么它可能比试图弄清楚如何隐藏控件更容易。

顺便说一句,这是一个不错的小页面。祝你好运!

解决您的第二个问题/评论:使用对象/嵌入标签意味着您依赖浏览器/操作系统来决定它将使用哪个插件来播放音频。一些谷歌搜索会发现 IE 和 quicktime 的问题,以及一种可能的解决方案:

希望对您有所帮助。如果您一直碰壁,SoundManager 2 可能值得一试,但请注意,使用 SM2 将要求使用旧浏览器的用户安装并取消阻止 Flash。

【讨论】:

  • 哇哦!你这个小开膛手!谢谢 - 确实就像将 的 CSS display 属性设置为 none 一样简单。
  • 编辑了我的问题,为您的后续问题提供更多反馈,希望对您有所帮助。
  • 感谢您的其他建议 :) 设法完成了第二部分 - 请参阅下面的答案。
【解决方案2】:

我已经设法解决了 IE 中音频的第二个问题——为了让随机播放脚本与 IE 中的音频一起工作,你必须在音频代码之前调用随机播放——在我的情况下,我移动了所有条件 cmets在.shuffle(); 的下方,不用担心!

【讨论】:

    猜你喜欢
    • 2012-12-24
    • 2014-02-25
    • 2013-07-17
    • 1970-01-01
    • 2023-01-23
    • 1970-01-01
    • 1970-01-01
    • 2020-09-12
    • 1970-01-01
    相关资源
    最近更新 更多