"Mute All" Animate CC 中的动作

"Mute All" action in Animate CC

我正在尝试进行分页交互,用户可以随时单击按钮将他们带到任何其他页面。每个页面只是时间轴上的一个点,它会停止并播放页面动画片段。像这样:

exportRoot.introEnabled.addEventListener("click", introHandler.bind(this));

function introHandler()
{
    //mute all media here?

    exportRoot.gotoAndPlay(0); // <-- Frame where page starts
}

我的问题在于这是 HTML5 Canvas 而不是 actionscript 的东西,这意味着音频必须是事件同步的。

然后问题就变成了gotoAndPlay()每个场景切换页面时,前一个场景的声音不会停止。

搜索没有带来任何有帮助的东西。

我想知道是否有办法在按钮的功能内静音或停止所有播放的声音?

**注意:每个页面大约有 10 个声音,所以单独静音或停止每个声音真的很烦人。

要停止所有播放声音,您可以在 createjs.Sound 上使用静态 stop 方法。

createjs.Sound.stop();

请注意,这将停止正在播放的所有声音。您可以通过再次调用 play() 恢复任何声音实例,但无法恢复所有。

更好的方法可能是将播放的声音存储在一个数组中,当你想清除它们时,迭代数组以单独停止或暂停它们。完成后,清空数组,重新开始。

干杯,