如何检测soundJS中是否有声音?
我有很多声音有时合理地开启和关闭。我需要一种方法来确定在任何给定时间是否有任何声音在播放 即。
之类的东西createjs.Sound.isPlaying()
或
createjs.Sound.status()
答案 0 :(得分:2)
目前在SoundJS中没有这样的东西。
您可以自己查找,但它涉及深入挖掘私人会员,不推荐,并且可能会破坏内容。这是一个快速示例:
function countActiveSounds() {
var s = createjs.Sound.activePlugin,
count = 0;
for (var n in s._soundInstances) {
var inst = s._soundInstances[n];
for (var i=0, l=inst.length; i<l; i++) {
var p = inst[i];
if (p.playState == "playSucceeded") { count++; }
}
}
return count;
}
这涉及读取私有_soundInstances
哈希,并检查声音状态是否为&#34; playSucceeded&#34;。一旦完成,状态将变为&#34; playFinished&#34;。
同样,请谨慎使用:)
将功能请求记录到SoundJS GitHub。
可能是有意义的