Javascript 将音频对象指定给变量均衡功能
我正在为我的游戏创建一个声音库,我正在努力使它尽可能的干净和灵活。我的最终目标是能够定义一个变量(如下面的代码所示),并以类似音频对象的方式调用它Javascript 将音频对象指定给变量均衡功能,javascript,audio,html5-audio,Javascript,Audio,Html5 Audio,我正在为我的游戏创建一个声音库,我正在努力使它尽可能的干净和灵活。我的最终目标是能够定义一个变量(如下面的代码所示),并以类似音频对象的方式调用它sound1.play()或sound1.mute()等。我该怎么做呢?我的想法是,如果我将变量名传递给函数(例如sound1)并将其指定为audio对象,那么理论上它会工作 var sound1 = new brazen({ source:[ ['audio/hit1.mp3'], // mp3 ], }) 虽然我尝试过传递变量名,
sound1.play()
或sound1.mute()
等。我该怎么做呢?我的想法是,如果我将变量名传递给函数(例如sound1)并将其指定为audio对象,那么理论上它会工作
var sound1 = new brazen({
source:[
['audio/hit1.mp3'], // mp3
],
})
虽然我尝试过传递变量名,但仍然无法通过sound1.play()
调用它
这很有效
this.newSound = new Audio(soundName); // sound1.newSound is now an audio object
this.newSound.play(); // sound1.newSound.play() plays the sound
我想要什么
this = new Audio(soundName); // sound1 is now an audio object
this.play(); // sound1.play() plays the sound
我如何实现我的目标?显然,“我想要什么”不起作用,因为您无法将音频位分配给它。我想为任何声明为“new brazen()”的变量动态地实现这一点
理想情况下,我希望这个库是独立的,但如果Jquery是唯一的解决方案,我会接受它。找到了一个解决方案 我觉得没有早点尝试这一点很傻,但下面给出了我想要的结果。这是愚蠢的简单
s = new Audio(soundName); // sound1 is now an audio object
return s; // Var sound1 = audio object and assumes properties of HTML audio object, including .play();
为什么要尝试将值分配给此?
new brazen()
返回了什么?对这个缺乏正确的理解,同时试图找到问题的解决方案<代码>新brazen
当前不返回任何内容。。。给我一分钟,我来测试一下使用返回预期结果的方法有什么问题?没关系,我刚刚找到了解决方案。。。对不起,哈哈:)我将编辑我的问题以包含答案,并将其标记为已回答。顺便说一句,谢谢你,因为你在询问newbrazen()
返回的内容时的评论帮助我意识到了我的错误。