它在其他主要浏览器上工作得很好,但是MacOS上的Safari在调用webkitAudioContext.createBuffer应用程序接口时会引发NotSupportedError异常。编辑: 在Safari的JavaScript控制台中运行这两行代码将重现该问题: var audioCtx = new (window.AudioContext || window.webkitAudioContext
在ios上,你在运行时得到的仍然是一个webkitAudioContext,而不是一个AudioContext。似乎我使用的typescript定义不理解如何处理它。为了适应ios,我尝试将变量的类型更改为any,这样如果存在而AudioContext不存在,我就可以放入webkitAudioContext;代码看起来像这样(这都是原型代码,所以错误处理非常临时):_audioContext = new AudioContext();
} else if (window['webkitAudioContext'
--Create new webkitaudiocontext for each sound and play-->
var context= new webkitAudioContext;var source = context.createMediaElementSource(el);
source.connect(context.de