HTML5 如何为 javascript 游戏替换 Internet Explorer 的 WebAudio API?

2023-12-15

我是 html 中的音频新手。我发现了一些很棒的 JavaScript 小游戏示例。我想尝试在 Internet Explorer 中加载游戏,但得到:“此浏览器不支持 Web api 音频”。

我找到了这个网站:http://caniuse.com/#feat=audio-api并且看起来 Internet Explorer 不支持它。

我还发现 SoundManager 2 似乎适用于所有浏览器。

我的问题是,有没有办法检测浏览器是否支持 WebApiAudio 并在不支持时提供后备?

我希望能够在所有不同的浏览器上提供相同的功能,但我目前不知道如何做到这一点。

一项不错的功能是能够同时播放多种声音,并且声音音量可调(例如爆炸声)。

我想创建一个可以在 PC、Mac、Android 和 Ipad 上运行的 helloworld。是否可以 ?

非常感谢我的多个问题。

我检查这个演示:http://www.cocos2d-x.org/wiki/MoonWarriors_-_Cocos2d-JS_Showcase声音在 Firefox 中工作正常,但在 Internet Explorer 中只有音乐,没有音效


我的问题是有没有办法检测浏览器是否支持 WebApiAudio 并在不支持时提供后备?


"use strict"



function audioContextCheck() {
    if (typeof AudioContext !== "undefined") {
        return new AudioContext();
    } else if (typeof webkitAudioContext !== "undefined") {
        return new webkitAudioContext();
    } else if (typeof mozAudioContext !== "undefined") {
        return new mozAudioContext();
    } else {

       // Do stuff with soundmanager or something else if Web Audio API is not supported




    }
}
var audioContext = audioContextCheck();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML5 如何为 javascript 游戏替换 Internet Explorer 的 WebAudio API? 的相关文章

  • 如何检测浏览器是否支持自定义元素

    我正在查看 Modernizr 它应该有助于功能检测 这应该可以帮助确定您的网站是否与给定的 Web 浏览器兼容 但我没有看到任何表明我可以使用它来检测自定义 HTML 的内容我们在内容中创建和定义的元素 如果不是 Modernizr 我如
  • JavaScript onTouch 不工作

    谁能告诉我为什么这个 onTouch 处理程序没有触发 var myDiv document getElementById existingContent var myButton a href log out a myDiv append
  • 为什么 JavaScript base-36 转换看起来不明确

    我目前正在编写一段使用 Base 36 编码的 JavaScript 我遇到了这个问题 parseInt welcomeback 36 toString 36 看来要回归了 welcomebacg 我在 Chrome 开发者控制台和 Nod
  • Web 串行 API - 未捕获(承诺中)DOMException:无法打开串行端口/所需成员 baudRate 未定义

    下面的代码可以在我的 Xubuntu 机器上运行 但现在我在 Kubuntu 上 它不再工作了 它不会打开端口 Arduino IDE 工作正常 可以向开发板写入代码 并且我可以在 Chrome 中选择设备 Arduino Uno 但当我尝
  • 在 Wordpress 站点中进行 AJAX 调用时出现问题

    我在使用 Wordpress 站点功能的 AJAX 部分时遇到了一些问题 该功能接受在表单上输入的邮政编码 使用 PHP 函数来查找邮政编码是否引用特定位置并返回到该位置的永久链接 我的第一个问题是关于我构建的表单 现在我的表单操作是空白的
  • Google App Engine:修改云运行环境

    我正在尝试部署一个使用自定义 Node js 服务器的 Next js 应用程序 我想将自定义构建变量注入应用程序 next config js const NODE ENV process env NODE ENV const envTy
  • 为什么是 javascript:history.go(-1);无法在移动设备上工作?

    首先 一些背景 我有一个向用户呈现搜索页面 html 表单 的应用程序 填写标准并单击 搜索 按钮后 结果将显示在标准部分下方 在结果列表中 您可以通过单击将您带到新页面的链接来查看单个结果的详细信息 在详细信息页面中 我添加了一个 返回结
  • JavaScript 重定向到新窗口

    我有以下代码 它根据下拉列表的值重定向到页面 我如何使其在新窗口中打开 function goto form var index form select selectedIndex if form select options index
  • IE 中的 Google 文档查看器

    我到处寻找解决方案 但找不到 我在用着谷歌文档查看器 https drive googleblog com 2009 09 view online files using google docs html查看 PDF 文件 这是一个很棒的工
  • 将div设置为隐藏,延时后可见

    我试图在 X 时间后 也许甚至在随机时间之后 但现在我们只做固定时间 在黑色背景上出现一个黄色方块 function initialSetup if document getElementById yellow null document
  • 在 webpack 2.x 中使用 autoprefixer 和 postcss

    如何使用autoprefixer使用 webpack 2 x 以前 它曾经是这样的 module loaders test scss loader style css sass postcss postcss gt return autop
  • Babel 7 Jest Core JS“TypeError:wks不是函数”

    将我的项目升级到 Babel 7 后 通过 Jest 运行测试会抛出以下错误 测试在 Babel 6 中运行没有任何问题 但在 Babel 7 中失败并出现以下错误 TypeError wks is not a function at Ob
  • HTML 离线应用程序缓存,列出下载的文件

    作为我正在构建的离线 Web 应用程序的加载屏幕的一部分 使用缓存清单 http developer apple com library safari documentation iPhone Conceptual SafariJSData
  • 模块构建失败(来自 ./node_modules/babel-loader/lib/index.js)Vue Js

    我从 GitHub 下载了一个我和我的朋友正在开发的项目 但是当我尝试运行时 npm run serve 我收到这个错误 src main js 中的错误 Module build failed from node modules babe
  • 如何获取给定 DOM 元素的所有定义的 CSS 选择器?

    如何使用 jQuery 获取给定 DOM 元素的所有定义的 CSS 选择器 定义后 我的意思是在应用于任何样式表的所有 CSS 选择器document 在某种程度上 这类似于 FireBug 实现的功能 其中显示所选 DOM 元素的所有应用
  • 有没有办法阻止 prettier / prettier-now 将函数参数分解为新行

    当使用 prettier prettier now 在保存时进行格式化时 当一个函数包装另一个函数时 它会中断到一个新行 我想知道是否有办法阻止这种行为 例如 期望的输出 app get campgrounds id catchAsync
  • Javascript转换时区问题

    我在转换当前时区的日期时间时遇到问题 我从服务器收到此日期字符串 格式为 2015 10 09T08 00 00 这是中部时间 但是当我使用 GMT 5 中的 new Date strDate 转换此日期时间时 它返回给我的信息如下 这是不
  • Safari 支持 JavaScript window.onerror 吗?

    我有一个附加到 window onerror 的函数 window onerror function errorMsg url line window alert asdf 这在 firefox chrome 和 IE 中工作正常 但在 s
  • 如何在 pg-promise 中设置模式

    我正在搜索的文档pg 承诺 https github com vitaly t pg promise特别是在创建客户端时 但我无法找到设置连接中使用的默认架构的选项 它始终使用public架构 我该如何设置 通常 为数据库或角色设置默认架构
  • 在 React.js 中编辑丰富的数据结构

    我正在尝试为数据结构创建一个简单的基于网格的编辑器 但我在使用 React js 时遇到了一些概念问题 他们的文档对此没有太大帮助 所以我希望这里有人可以提供帮助 首先 将状态从外部组件传输到内部组件的正确方法是什么 是否有可能将内部组件中

随机推荐

  • 绕过Windows对程序文件文件夹的权限限制

    我用 C 做了一个小应用程序 它做了一些文件操作 基本上是搜索和更改一些文件名 但如果在 Win Vista 7 的程序文件夹中使用它 程序会说权限被拒绝 有没有办法绕过这个 另外 Java可以绕过这个吗 如果文件权限很容易被绕过 那么它们
  • 重播套件无法正常工作 IPAD IOS11 BUG

    我正在使用以下代码来录制屏幕 它工作得很好ios10 and ios9 IBAction func btnRecordTapped sender UIButton if RPScreenRecorder shared isAvailable
  • PHP 使用 str_replace 替换或删除空行的简单方法

    line out str replace r str replace n line in 上面的内容对我有用 但是 我在某处看到了 n r 示例 但我似乎找不到它 我只是想去掉所有空白行 上面是在 foreach 循环中 感谢您的教导 你不
  • 为什么这个regionprops返回0x1结构体?

    我正在尝试转换 MIT 的代码course 生物仪器和测量在维基页面中here从 Matlab 7 3 到 Matlab R2016a 我的输入数据的特征是平方 L2 范数的尺度 高斯核应该使用平方 L2 范数 但我发现 Matlab 和
  • 在 Python 2.7.x 中,如何验证 .close() 之后文件写入磁盘已完成?

    我正在 Windows 10 server 2016 上用 Python 2 7 x 编写一个工具 作为程序的一部分 我编写了一个可变大小的文件 可能是 1KiB 可能是 1GiB 或任何东西 我一直遇到一个问题在我调用 myFile cl
  • 通过属性控制序列化(反)序列化期间的枚举值格式

    问题 假设我有一个代表某事物或其他事物的枚举 public enum ResultState Found Deleted NotFound 在我的序列化 json 中 我希望将这些值序列化为 found gone or not found
  • 如何在带有嵌入式tomcat的Spring Boot应用程序中运行hawt.io

    我想将 hawt io 作为嵌入式组件添加到我的 spring boot fat jar 应用程序中 该应用程序具有嵌入式 tomcat 服务器 我怎样才能做到这一点 如何部署 hawt io war 文件 更新 我添加了依赖项 hawti
  • Pandas DatetimeIndex 到数据帧

    如何将 DatetimeIndex 更改为像这样的简单数据框 month 0 2013 07 31 1 2013 08 31 2 2013 09 30 3 2013 10 31 这是日期时间索引 DatetimeIndex 2013 07
  • 模板类:针对函数的 ctor -> 新 C++ 标准

    在这个问题中 模板 点 点丹尼斯和迈克尔注意到构造函数的不合理 愚蠢的实现 他们是对的 我当时没有考虑到这一点 但我发现构造函数对于像这样的模板类没有多大帮助 相反 这里的函数更方便和安全 namespace point template
  • UIKeyboardTypeDecimalPad - 将逗号更改为点

    我使用此方法来显示带小数点分隔符的键盘 myTextField keyboardType UIKeyboardTypeDecimalPad 如何将逗号更改为点分隔符 我有一个芬兰语言环境 使用逗号 小数在我的应用程序上不起作用 IBActi
  • 可重现的 nix-env -i 仅适用于 Nix,无 NixOS

    我只使用Nix作为包管理器并且不使用所有NixOS 我想要一个可复制的nix env i打包安装 可以共享和备份 我知道使用config nix对于对于NixOS但我正在寻找类似的功能Nix包 从 Nixpkgs 您可以使用buildEnv
  • 使用多个参数快速上传图像

    我正在尝试使用 swift 将图像上传到后端客户端 问题是我似乎无法正确获取 httpbody 的格式 我不想使用多部分表单进行上传 因为我不知道如何在后端处理它 这是我的代码 当我在线查看图像时 它不起作用 它不显示 而且只有 70kb
  • XML 中的换行符未在浏览器中显示,但在查看源代码中正常

    我生成了一个 XML 文件 其中一个节点包含我需要使用换行符 换行符以特定方式呈现的数据 这应该是第一行这应该是第二行 当我在浏览器中加载 XML 并查看它看起来正确的源代码时 我可以复制并粘贴数据并保持结构不变 然而在浏览器中它呈现为 这
  • 如何在 R 中重新编码多列

    我尽了最大努力重新编码多个列 但仍然很难做到 这是我所做的 df lt read table text ZR1 Time1 ZR2 Time2 ZR3 Time3 A 60 A 56 B 44 C 61 B 44 D 78 D 62 C 7
  • 在 ZSH 中设置环境变量给出了预期的数字

    我正在尝试在 ZSH 中设置一个数组 使用 oh my zsh 配置 export AR localhost 1919 localhost 1918 但我收到这样的错误 zsh number expected 如果我不添加导出命令就可以了
  • 如何在 Xamarin 中实现 Google 地图的标记聚类

    我已经在我的应用程序中成功实现了 Google 地图 我必须实施标记聚类Xamarin 安卓 The link这里给出了有关如何实现的很好的解释 但我无法理解如何引用该包 我得到的源文件很少 但它没有帮助 因为我不知道如何引用 jar 文件
  • 生成 0 到 9 之间的随机整数

    如何在 Python 中生成 0 到 9 含 之间的随机整数 例如 0 1 2 3 4 5 6 7 8 9 Try random randrange from random import randrange print randrange
  • 在android中启动带有桌面视图的chrome浏览器应用程序

    我正在使用以下所需功能启动 Chrome 应用程序 DesiredCapabilities capabilities new DesiredCapabilities capabilities setCapability deviceName
  • 对于macOS Cocoa,如何指定屏幕上的某个窗口或矩形进行截图?

    我编写了一个用于测量图像文件的 macOS 应用程序 我希望添加捕获屏幕截图的功能 我希望它有一个像 macOS 应用程序 预览 那样的用户界面 要使用其屏幕截图功能 请执行 文件 gt 截屏 然后会出现一个包含以下选项的子菜单 从选择 从
  • HTML5 如何为 javascript 游戏替换 Internet Explorer 的 WebAudio API?

    我是 html 中的音频新手 我发现了一些很棒的 JavaScript 小游戏示例 我想尝试在 Internet Explorer 中加载游戏 但得到 此浏览器不支持 Web api 音频 我找到了这个网站 http caniuse com